- #12 -> Enviar documentos por correo electrónico. Adaptación de los módulos (sin terminar)

- En los controladores, cambiar TObservador por TControllerBase
- Limpieza de código y warnings.


git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/trunk@528 0c75b7a4-871f-7646-8a2f-f78d34cc349f
This commit is contained in:
David Arranz 2008-08-22 14:52:35 +00:00
parent 253cc6e33b
commit e7e45f1323
82 changed files with 1597 additions and 1373 deletions

View File

@ -9,12 +9,12 @@ const
{ Data table rules ids { Data table rules ids
Feel free to change them to something more human readable Feel free to change them to something more human readable
but make sure they are unique in the context of your application } but make sure they are unique in the context of your application }
RID_USUARIOS = '{190ECFD6-8BF8-463A-A069-134DC883028F}'; RID_USUARIOS = '{2287F1C0-E6D4-49D4-AB4C-12163784F52F}';
RID_USUARIOS_EVENTOS = '{CA759DA6-3907-41E0-8214-9BC7C8630DE0}'; RID_USUARIOS_EVENTOS = '{30A9A653-7C94-4C9E-9826-57923A79A57B}';
RID_USUARIOS_LOGON = '{243F3788-11A9-45F4-B185-AA2D73BE1D71}'; RID_USUARIOS_LOGON = '{6663D7AD-00A8-471A-9DD6-0A354F14D25B}';
RID_PERMISOS = '{F3432FFB-2820-4EB5-89C6-0D64DB88682D}'; RID_PERMISOS = '{271B422A-6E39-420F-85DE-835F1D690B83}';
RID_PERMISOSEX = '{05E24A98-1A49-4D0F-A11E-49B4B37F7489}'; RID_PERMISOSEX = '{603236F6-99D3-4AD9-8B2B-FE07776B6E4F}';
RID_PERFILES = '{6C36D997-1C57-4896-A3CE-4B74F465AC38}'; RID_PERFILES = '{59A02969-8C95-4F46-BE34-51B288BCF8C9}';
{ Data table names } { Data table names }
nme_USUARIOS = 'USUARIOS'; nme_USUARIOS = 'USUARIOS';
@ -129,7 +129,7 @@ const
type type
{ IUSUARIOS } { IUSUARIOS }
IUSUARIOS = interface(IDAStronglyTypedDataTable) IUSUARIOS = interface(IDAStronglyTypedDataTable)
['{4039ABB1-B663-4DFA-8549-14CA71056FD6}'] ['{2813C411-0CBD-437C-83F3-857491E279DC}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -296,7 +296,7 @@ type
{ IUSUARIOS_EVENTOS } { IUSUARIOS_EVENTOS }
IUSUARIOS_EVENTOS = interface(IDAStronglyTypedDataTable) IUSUARIOS_EVENTOS = interface(IDAStronglyTypedDataTable)
['{6E1A8BC6-48E1-4831-A571-4DCF7C3A8DA6}'] ['{EB6F65EF-39D6-4820-9797-B25FD4C792B3}']
{ Property getters and setters } { Property getters and setters }
function GetAPLICACIONValue: String; function GetAPLICACIONValue: String;
procedure SetAPLICACIONValue(const aValue: String); procedure SetAPLICACIONValue(const aValue: String);
@ -427,7 +427,7 @@ type
{ IUSUARIOS_LOGON } { IUSUARIOS_LOGON }
IUSUARIOS_LOGON = interface(IDAStronglyTypedDataTable) IUSUARIOS_LOGON = interface(IDAStronglyTypedDataTable)
['{9343561D-EEC6-478D-891D-E1BE34EB2FD4}'] ['{F1859EC8-B46A-4505-A1D0-FC3502A3CCC5}']
{ Property getters and setters } { Property getters and setters }
function GetLOGONIDValue: String; function GetLOGONIDValue: String;
procedure SetLOGONIDValue(const aValue: String); procedure SetLOGONIDValue(const aValue: String);
@ -510,7 +510,7 @@ type
{ IPERMISOS } { IPERMISOS }
IPERMISOS = interface(IDAStronglyTypedDataTable) IPERMISOS = interface(IDAStronglyTypedDataTable)
['{BDFA2EDF-FEA0-4089-AD25-8D484E9CC6CA}'] ['{290DD780-7C7C-4A2E-891E-3A29A6505859}']
{ Property getters and setters } { Property getters and setters }
function GetID_USUARIOValue: Integer; function GetID_USUARIOValue: Integer;
procedure SetID_USUARIOValue(const aValue: Integer); procedure SetID_USUARIOValue(const aValue: Integer);
@ -581,7 +581,7 @@ type
{ IPERMISOSEX } { IPERMISOSEX }
IPERMISOSEX = interface(IDAStronglyTypedDataTable) IPERMISOSEX = interface(IDAStronglyTypedDataTable)
['{5CF900FA-631D-4FC6-99AF-F173251A0378}'] ['{8F86DA9F-7DF3-4B17-84F5-0876E21F625D}']
{ Property getters and setters } { Property getters and setters }
function GetID_USUARIOValue: Integer; function GetID_USUARIOValue: Integer;
procedure SetID_USUARIOValue(const aValue: Integer); procedure SetID_USUARIOValue(const aValue: Integer);
@ -664,7 +664,7 @@ type
{ IPERFILES } { IPERFILES }
IPERFILES = interface(IDAStronglyTypedDataTable) IPERFILES = interface(IDAStronglyTypedDataTable)
['{2738B3A7-8644-46C1-AD68-CFA62CE0809E}'] ['{A7B5EBFD-F995-4F8D-8723-7397501F897D}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);

View File

@ -53,6 +53,57 @@
<DelphiCompile Include="Base.dpk"> <DelphiCompile Include="Base.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\Modulos\Facturas de cliente\adortl.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\cxDataD11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\cxEditorsD11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\cxExportD11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\cxExtEditorsD11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\cxGridD11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\cxIntl6D11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\cxIntlPrintSys3D11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\cxLibraryD11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\cxPageControlD11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\DataAbstract_Core_D11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\dbrtl.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\dclIndyCore.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\designide.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\dsnap.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\dxGDIPlusD11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\dxPSCoreD11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\dxThemeD11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\GUISDK_D11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\IndyCore.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\IndyProtocols.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\IndySystem.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\Jcl.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JclVcl.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JSDialog100.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JvCmpD11R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JvCoreD11R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JvCtrlsD11R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JvDlgsD11R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JvMMD11R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JvNetD11R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JvPageCompsD11R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JvStdCtrlsD11R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JvSystemD11R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\pckMD5.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\pckUCDataConnector.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\pckUserControl_RT.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\PngComponentsD10.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\PNG_D10.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\RemObjects_Core_D11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\RemObjects_Indy_D11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\rtl.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\TB2k_D10.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\tbx_d10.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\vcl.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\vclactnband.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\vcldb.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\vcljpg.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\VclSmp.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\vclx.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\xmlrtl.dcp" />
<DCCReference Include="..\Servicios\FactuGES_Intf.pas" /> <DCCReference Include="..\Servicios\FactuGES_Intf.pas" />
<DCCReference Include="Conexion\uConfigurarConexion.pas"> <DCCReference Include="Conexion\uConfigurarConexion.pas">
<Form>fConfigurarConexion</Form> <Form>fConfigurarConexion</Form>
@ -77,56 +128,12 @@
<Form>dmBase</Form> <Form>dmBase</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="Utiles\adortl.dcp" />
<DCCReference Include="Utiles\ClassRegistry\uClassRegistryUtils.pas" /> <DCCReference Include="Utiles\ClassRegistry\uClassRegistryUtils.pas" />
<DCCReference Include="Utiles\ClassRegistry\uEditorRegistryUtils.pas" /> <DCCReference Include="Utiles\ClassRegistry\uEditorRegistryUtils.pas" />
<DCCReference Include="Utiles\ClassRegistry\uInformeRegistryUtils.pas" /> <DCCReference Include="Utiles\ClassRegistry\uInformeRegistryUtils.pas" />
<DCCReference Include="Utiles\ClassRegistry\uViewRegistryUtils.pas" /> <DCCReference Include="Utiles\ClassRegistry\uViewRegistryUtils.pas" />
<DCCReference Include="Utiles\ClipboardUtils.pas" /> <DCCReference Include="Utiles\ClipboardUtils.pas" />
<DCCReference Include="Utiles\Ctltortf.pas" /> <DCCReference Include="Utiles\Ctltortf.pas" />
<DCCReference Include="Utiles\cxDataD11.dcp" />
<DCCReference Include="Utiles\cxEditorsD11.dcp" />
<DCCReference Include="Utiles\cxExportD11.dcp" />
<DCCReference Include="Utiles\cxExtEditorsD11.dcp" />
<DCCReference Include="Utiles\cxGridD11.dcp" />
<DCCReference Include="Utiles\cxIntl6D11.dcp" />
<DCCReference Include="Utiles\cxIntlPrintSys3D11.dcp" />
<DCCReference Include="Utiles\cxLibraryD11.dcp" />
<DCCReference Include="Utiles\cxPageControlD11.dcp" />
<DCCReference Include="Utiles\DataAbstract_Core_D11.dcp" />
<DCCReference Include="Utiles\dbrtl.dcp" />
<DCCReference Include="Utiles\dclIndyCore.dcp" />
<DCCReference Include="Utiles\designide.dcp" />
<DCCReference Include="Utiles\dsnap.dcp" />
<DCCReference Include="Utiles\dxGDIPlusD11.dcp" />
<DCCReference Include="Utiles\dxPSCoreD11.dcp" />
<DCCReference Include="Utiles\dxThemeD11.dcp" />
<DCCReference Include="Utiles\GUISDK_D11.dcp" />
<DCCReference Include="Utiles\IndyCore.dcp" />
<DCCReference Include="Utiles\IndyProtocols.dcp" />
<DCCReference Include="Utiles\IndySystem.dcp" />
<DCCReference Include="Utiles\Jcl.dcp" />
<DCCReference Include="Utiles\JclVcl.dcp" />
<DCCReference Include="Utiles\JSDialog100.dcp" />
<DCCReference Include="Utiles\JvCmpD11R.dcp" />
<DCCReference Include="Utiles\JvCoreD11R.dcp" />
<DCCReference Include="Utiles\JvCtrlsD11R.dcp" />
<DCCReference Include="Utiles\JvDlgsD11R.dcp" />
<DCCReference Include="Utiles\JvMMD11R.dcp" />
<DCCReference Include="Utiles\JvNetD11R.dcp" />
<DCCReference Include="Utiles\JvPageCompsD11R.dcp" />
<DCCReference Include="Utiles\JvStdCtrlsD11R.dcp" />
<DCCReference Include="Utiles\JvSystemD11R.dcp" />
<DCCReference Include="Utiles\pckMD5.dcp" />
<DCCReference Include="Utiles\pckUCDataConnector.dcp" />
<DCCReference Include="Utiles\pckUserControl_RT.dcp" />
<DCCReference Include="Utiles\PngComponentsD10.dcp" />
<DCCReference Include="Utiles\PNG_D10.dcp" />
<DCCReference Include="Utiles\RemObjects_Core_D11.dcp" />
<DCCReference Include="Utiles\RemObjects_Indy_D11.dcp" />
<DCCReference Include="Utiles\rtl.dcp" />
<DCCReference Include="Utiles\TB2k_D10.dcp" />
<DCCReference Include="Utiles\tbx_d10.dcp" />
<DCCReference Include="Utiles\uAppInfoUtils.pas" /> <DCCReference Include="Utiles\uAppInfoUtils.pas" />
<DCCReference Include="Utiles\uCalculosUtils.pas" /> <DCCReference Include="Utiles\uCalculosUtils.pas" />
<DCCReference Include="Utiles\uDataTableUtils.pas" /> <DCCReference Include="Utiles\uDataTableUtils.pas" />
@ -145,13 +152,6 @@
<DCCReference Include="Utiles\uRTFUtils.pas" /> <DCCReference Include="Utiles\uRTFUtils.pas" />
<DCCReference Include="Utiles\uSistemaFunc.pas" /> <DCCReference Include="Utiles\uSistemaFunc.pas" />
<DCCReference Include="Utiles\uStringsUtils.pas" /> <DCCReference Include="Utiles\uStringsUtils.pas" />
<DCCReference Include="Utiles\vcl.dcp" />
<DCCReference Include="Utiles\vclactnband.dcp" />
<DCCReference Include="Utiles\vcldb.dcp" />
<DCCReference Include="Utiles\vcljpg.dcp" />
<DCCReference Include="Utiles\VclSmp.dcp" />
<DCCReference Include="Utiles\vclx.dcp" />
<DCCReference Include="Utiles\xmlrtl.dcp" />
</ItemGroup> </ItemGroup>
</Project> </Project>
<!-- EurekaLog First Line <!-- EurekaLog First Line

Binary file not shown.

View File

@ -3,7 +3,7 @@ unit uIntegerListUtils;
interface interface
uses uses
Classes; Classes, FactuGES_Intf;
type type
TIntegerList = class(TList) TIntegerList = class(TList)
@ -14,6 +14,7 @@ type
procedure Add(Value: integer); reintroduce; procedure Add(Value: integer); reintroduce;
function Find(Value: integer; var Index: Integer): Boolean; function Find(Value: integer; var Index: Integer): Boolean;
property Integers[index: integer]: integer read GetInteger write SetInteger; default; property Integers[index: integer]: integer read GetInteger write SetInteger; default;
function ToIntegerArray : TIntegerArray;
end; end;
implementation implementation
@ -28,6 +29,15 @@ begin
Items[index] := Pointer(Value); Items[index] := Pointer(Value);
end; end;
function TIntegerList.ToIntegerArray: TIntegerArray;
var
i : Integer;
begin
Result := TIntegerArray.Create;
for i := 0 to Count - 1 do
Result.Add(Integers[i]);
end;
procedure TIntegerList.Add(Value: integer); procedure TIntegerList.Add(Value: integer);
var var
Index: integer; Index: integer;

View File

@ -157,7 +157,6 @@ function DarFicheroPDFTemporal(const AFileName : String) : String;
var var
Cadena : String; Cadena : String;
RutaTmp : string; RutaTmp : string;
Buf: array [0..MAX_PATH] of Char;
begin begin
if not EsCadenaVacia(AFileName) then if not EsCadenaVacia(AFileName) then
begin begin

View File

@ -12,21 +12,22 @@ inherited fDialogElegirEMail: TfDialogElegirEMail
inherited pnlBotones: TFlowPanel inherited pnlBotones: TFlowPanel
Top = 164 Top = 164
Width = 533 Width = 533
ExplicitTop = 164
ExplicitWidth = 533
inherited Button1: TButton inherited Button1: TButton
Left = 437 Left = 437
TabOrder = 1
ExplicitLeft = 437 ExplicitLeft = 437
end end
inherited Button2: TButton inherited Button2: TButton
Left = 347 Left = 347
TabOrder = 0
ExplicitLeft = 347 ExplicitLeft = 347
end end
end end
inherited FlowPanel1: TFlowPanel inherited FlowPanel1: TFlowPanel
Width = 533 Width = 533
Height = 164 Height = 164
ExplicitTop = -6 ExplicitWidth = 533
ExplicitHeight = 164
inherited lblInstruccion: TLabel inherited lblInstruccion: TLabel
Width = 411 Width = 411
Caption = 'Indique la direcci'#243'n de correo electr'#243'nico del destinatario:' Caption = 'Indique la direcci'#243'n de correo electr'#243'nico del destinatario:'

View File

@ -110,7 +110,7 @@ procedure TfDialogElegirEMail.FormCloseQuery(Sender: TObject;
var CanClose: Boolean); var CanClose: Boolean);
begin begin
inherited; inherited;
if rbEdit.Checked and EsCadenaVacia(edtEMail.Text) then if (ModalResult = mrOk) and rbEdit.Checked and EsCadenaVacia(edtEMail.Text) then
begin begin
ShowErrorMessage('Elegir dirección de correo electrónico', 'Debe indicar una dirección de correo electrónico.'); ShowErrorMessage('Elegir dirección de correo electrónico', 'Debe indicar una dirección de correo electrónico.');
edtEMail.SetFocus; edtEMail.SetFocus;
@ -131,8 +131,6 @@ begin
end; end;
procedure TfDialogElegirEMail.FormShow(Sender: TObject); procedure TfDialogElegirEMail.FormShow(Sender: TObject);
var
I: Integer;
begin begin
inherited; inherited;
cbEMail.Items.Clear; cbEMail.Items.Clear;

View File

@ -11,7 +11,8 @@ uses
pngimage, frxExportImage, frxExportPDF, frxDCtrl, frxDMPExport, pngimage, frxExportImage, frxExportPDF, frxDCtrl, frxDMPExport,
frxGradient, frxChBox, frxCross, frxRich, frxOLE, frxBarcode, frxGradient, frxChBox, frxCross, frxRich, frxOLE, frxBarcode,
ExtCtrls, JvComponentBase, TBXStatusBars, JvExComCtrls, JvStatusBar, ExtCtrls, JvComponentBase, TBXStatusBars, JvExComCtrls, JvStatusBar,
frxExportMail, frxExportXLS, frxExportText, frxExportRTF, uControllerBase; frxExportMail, frxExportXLS, frxExportText, frxExportRTF, uControllerBase,
uIntegerListUtils;
type type
IEditorPreview = interface(IEditorBase) IEditorPreview = interface(IEditorBase)
@ -33,9 +34,9 @@ type
property Controller : IControllerBase read GetController property Controller : IControllerBase read GetController
write SetController; write SetController;
function GetListaID : String; function GetListaID : TIntegerList;
procedure SetListaID (const Value : String); procedure SetListaID (const Value : TIntegerList);
property ListaID : String read GetListaID property ListaID : TIntegerList read GetListaID
write SetListaID; write SetListaID;
end; end;
@ -144,7 +145,7 @@ type
FPreview : TfrViewPreview; FPreview : TfrViewPreview;
FTitle : TCaption; FTitle : TCaption;
FController : IControllerBase; FController : IControllerBase;
FListaID : String; FListaID : TIntegerList;
procedure OnPageChanged(Sender: TfrxPreview; PageNo: Integer); procedure OnPageChanged(Sender: TfrxPreview; PageNo: Integer);
procedure UpdateZoom; procedure UpdateZoom;
protected protected
@ -154,11 +155,11 @@ type
procedure PonerTitulos(const ATitulo: String = ''); override; procedure PonerTitulos(const ATitulo: String = ''); override;
function GetController : IControllerBase; function GetController : IControllerBase;
procedure SetController (const Value : IControllerBase); procedure SetController (const Value : IControllerBase);
procedure SetListaID (const Value : String); procedure SetListaID (const Value : TIntegerList);
function GetListaID : String; function GetListaID : TIntegerList;
public public
constructor Create(AOwner: TComponent); override; constructor Create(AOwner: TComponent); override;
property ListaID : String read GetListaID property ListaID : TIntegerList read GetListaID
write SetListaID; write SetListaID;
property Controller : IControllerBase read GetController property Controller : IControllerBase read GetController
write SetController; write SetController;
@ -186,7 +187,7 @@ begin
Result := FController; Result := FController;
end; end;
function TfEditorPreview.GetListaID: String; function TfEditorPreview.GetListaID: TIntegerList;
begin begin
Result := FListaID; Result := FListaID;
end; end;
@ -454,7 +455,7 @@ begin
FController := Value; FController := Value;
end; end;
procedure TfEditorPreview.SetListaID(const Value: String); procedure TfEditorPreview.SetListaID(const Value: TIntegerList);
begin begin
FListaID := Value; FListaID := Value;
end; end;

View File

@ -9,7 +9,7 @@ uses
uDetallesAlbaranClienteController, uBizAlbaranesCliente, uBizDireccionesContacto; uDetallesAlbaranClienteController, uBizAlbaranesCliente, uBizDireccionesContacto;
type type
IAlbaranesClienteController = interface(IObservador) IAlbaranesClienteController = interface(IControllerBase)
['{E83F4950-400E-446B-8EB0-1609FF8FEA77}'] ['{E83F4950-400E-446B-8EB0-1609FF8FEA77}']
function GetClienteController: IClientesController; function GetClienteController: IClientesController;
procedure SetClienteController(const Value: IClientesController); procedure SetClienteController(const Value: IClientesController);
@ -61,7 +61,7 @@ type
DoPost: Boolean = True) : Boolean; DoPost: Boolean = True) : Boolean;
end; end;
TAlbaranesClienteController = class(TObservador, IAlbaranesClienteController) TAlbaranesClienteController = class(TControllerBase, IAlbaranesClienteController)
protected protected
FDataModule : IDataModuleAlbaranesCliente; FDataModule : IDataModuleAlbaranesCliente;
FClienteController : IClientesController; FClienteController : IClientesController;
@ -152,7 +152,7 @@ uses
// Pedidos no estará en TECSITEL // Pedidos no estará en TECSITEL
// uPedidosClienteController, uBizPedidosCliente, uBizDetallesPedidoCliente, schPedidosClienteClient_Intf, // uPedidosClienteController, uBizPedidosCliente, uBizDetallesPedidoCliente, schPedidosClienteClient_Intf,
uDialogUtils, Windows, Forms, Dialogs, uGUIBase; uDialogUtils, Windows, Forms, Dialogs, uGUIBase, uIntegerListUtils;
@ -933,11 +933,11 @@ end;
procedure TAlbaranesClienteController.Preview(AAlbaran: IBizAlbaranCliente; AllItems: Boolean = false); procedure TAlbaranesClienteController.Preview(AAlbaran: IBizAlbaranCliente; AllItems: Boolean = false);
var var
AReportController : IAlbaranesClienteReportController; AReportController : IAlbaranesClienteReportController;
ID_Albaranes: TStringList; ID_Albaranes: TIntegerList;
begin begin
AReportController := TAlbaranesClienteReportController.Create; AReportController := TAlbaranesClienteReportController.Create;
ID_Albaranes := TStringList.Create; ID_Albaranes := TIntegerList.Create;
try try
@ -949,32 +949,31 @@ begin
First; First;
while not EOF do while not EOF do
begin begin
ID_Albaranes.Add(IntToStr(AAlbaran.ID)); ID_Albaranes.Add(AAlbaran.ID);
Next; Next;
end; end;
end; end;
end end
//Solo previsualizamos el item seleccionado //Solo previsualizamos el item seleccionado
else else
ID_Albaranes.Add(IntToStr(AAlbaran.ID)); ID_Albaranes.Add(AAlbaran.ID);
AReportController.Preview(ID_Albaranes.CommaText); AReportController.Preview(ID_Albaranes);
finally finally
AReportController := NIL; AReportController := NIL;
ID_Albaranes.Free; FreeANDNIL(ID_Albaranes);
end; end;
end; end;
procedure TAlbaranesClienteController.Print(AAlbaran: IBizAlbaranCliente; AllItems: Boolean = false); procedure TAlbaranesClienteController.Print(AAlbaran: IBizAlbaranCliente; AllItems: Boolean = false);
var var
AReportController : IAlbaranesClienteReportController; AReportController : IAlbaranesClienteReportController;
ID_Albaranes: TStringList; ID_Albaranes: TIntegerList;
begin begin
AReportController := TAlbaranesClienteReportController.Create; AReportController := TAlbaranesClienteReportController.Create;
ID_Albaranes := TStringList.Create; ID_Albaranes := TIntegerList.Create;
try try
//Si deseamos previsualizar todos los items del objeto albaran //Si deseamos previsualizar todos los items del objeto albaran
if AllItems then if AllItems then
@ -984,20 +983,20 @@ begin
First; First;
while not EOF do while not EOF do
begin begin
ID_Albaranes.Add(IntToStr(AAlbaran.ID)); ID_Albaranes.Add(AAlbaran.ID);
Next; Next;
end; end;
end; end;
end end
//Solo previsualizamos el item seleccionado //Solo previsualizamos el item seleccionado
else else
ID_Albaranes.Add(IntToStr(AAlbaran.ID)); ID_Albaranes.Add(AAlbaran.ID);
AReportController.Print(ID_Albaranes.CommaText); AReportController.Print(ID_Albaranes);
finally finally
AReportController := NIL; AReportController := NIL;
ID_Albaranes.Free; FreeANDNIL(ID_Albaranes);
end; end;
end; end;

View File

@ -5,13 +5,13 @@ interface
uses uses
Classes, SysUtils, uDADataTable, uControllerBase, uIDataModuleAlbaranesClienteReport, Classes, SysUtils, uDADataTable, uControllerBase, uIDataModuleAlbaranesClienteReport,
uClientesController, uAlbaranesClienteController, uDetallesAlbaranClienteController, uClientesController, uAlbaranesClienteController, uDetallesAlbaranClienteController,
uBizAlbaranesCliente; uBizAlbaranesCliente, uIntegerListUtils;
type type
IAlbaranesClienteReportController = interface(IControllerBase) IAlbaranesClienteReportController = interface(IControllerBase)
['{4BCC7A93-3322-494C-A3FA-118F4B62CB15}'] ['{4BCC7A93-3322-494C-A3FA-118F4B62CB15}']
procedure Preview(const AListaID : String); procedure Preview(const AListaID : TIntegerList);
procedure Print(const AListaID : String); procedure Print(const AListaID : TIntegerList);
procedure EtiquetasPreview(const AID : integer; Const withRefCliente: Boolean); procedure EtiquetasPreview(const AID : integer; Const withRefCliente: Boolean);
procedure EtiquetasPrint(const AID : integer; Const withRefCliente: Boolean); procedure EtiquetasPrint(const AID : integer; Const withRefCliente: Boolean);
function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean; function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean;
@ -26,8 +26,8 @@ type
constructor Create; override; constructor Create; override;
destructor Destroy; override; destructor Destroy; override;
procedure Preview(const AListaID : String); procedure Preview(const AListaID : TIntegerList);
procedure Print(const AListaID : String); procedure Print(const AListaID : TIntegerList);
function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean; function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean;
procedure EtiquetasPreview(const AID : integer; const withRefCliente: Boolean); procedure EtiquetasPreview(const AID : integer; const withRefCliente: Boolean);
procedure EtiquetasPrint(const AID : integer; const withRefCliente: Boolean); procedure EtiquetasPrint(const AID : integer; const withRefCliente: Boolean);
@ -140,7 +140,7 @@ begin
end; end;
end; end;
procedure TAlbaranesClienteReportController.Preview(const AListaID : String); procedure TAlbaranesClienteReportController.Preview(const AListaID : TIntegerList);
var var
AStream: Binary; AStream: Binary;
AEditor : IEditorAlbaranesClientePreview; AEditor : IEditorAlbaranesClientePreview;
@ -148,19 +148,21 @@ begin
AEditor := NIL; AEditor := NIL;
ShowHourglassCursor; ShowHourglassCursor;
try try
AStream := FDataModule.GetReport(AListaID); //Lista de seleccionados (Array de integers) AStream := FDataModule.GetRptAlbaranes(AListaID);
try try
CreateEditor('EditorAlbaranesClientePreview', IEditorAlbaranesClientePreview, AEditor); CreateEditor('EditorAlbaranesClientePreview', IEditorAlbaranesClientePreview, AEditor);
if Assigned(AEditor) then if Assigned(AEditor) then
with AEditor do begin
begin try
AEditor.Controller := Self; AEditor.Controller := Self;
AEditor.ListaID := AListaID; AEditor.ListaID := AListaID;
Title := 'Albarán - ' + AppFactuGES.EmpresaActiva.NOMBRE; AEditor.Title := 'Albarán - ' + AppFactuGES.EmpresaActiva.NOMBRE;
LoadFromStream(AStream); AEditor.LoadFromStream(AStream);
Preview; AEditor.Preview;
Release; finally
AEditor.Release;
end; end;
end;
finally finally
FreeAndNil(AStream); FreeAndNil(AStream);
AEditor := Nil; AEditor := Nil;
@ -170,7 +172,7 @@ begin
end; end;
end; end;
procedure TAlbaranesClienteReportController.Print(const AListaID : String); procedure TAlbaranesClienteReportController.Print(const AListaID : TIntegerList);
var var
AStream: Binary; AStream: Binary;
AEditor : IEditorAlbaranesClientePreview; AEditor : IEditorAlbaranesClientePreview;
@ -178,18 +180,21 @@ begin
AEditor := NIL; AEditor := NIL;
ShowHourglassCursor; ShowHourglassCursor;
try try
AStream := FDataModule.GetReport(AListaID); AStream := FDataModule.GetRptAlbaranes(AListaID);
try try
CreateEditor('EditorAlbaranesClientePreview', IEditorAlbaranesClientePreview, AEditor); CreateEditor('EditorAlbaranesClientePreview', IEditorAlbaranesClientePreview, AEditor);
if Assigned(AEditor) then if Assigned(AEditor) then
with AEditor do begin
begin try
AEditor.Controller := Self; AEditor.Controller := Self;
AEditor.ListaID := AListaID; AEditor.ListaID := AListaID;
LoadFromStream(AStream); AEditor.Title := 'Albarán - ' + AppFactuGES.EmpresaActiva.NOMBRE;
Print; AEditor.LoadFromStream(AStream);
Release; AEditor.Print;
finally
AEditor.Release;
end; end;
end;
finally finally
FreeAndNil(AStream); FreeAndNil(AStream);
AEditor := Nil; AEditor := Nil;

View File

@ -9,7 +9,7 @@ uses
uIDataModuleAlbaranesCliente, uBizAlbaranesCliente, uBizDetallesAlbaranCliente, uIDataModuleAlbaranesCliente, uBizAlbaranesCliente, uBizDetallesAlbaranCliente,
uIDataModuleAlbaranesClienteReport, uDataModuleBase, uDABin2DataStreamer, uDAMemDataTable, uIDataModuleAlbaranesClienteReport, uDataModuleBase, uDABin2DataStreamer, uDAMemDataTable,
uDAInterfaces, uDADataStreamer, uDARemoteDataAdapter; uDAInterfaces, uDADataStreamer, uDARemoteDataAdapter, uIntegerListUtils;
type type
TDataModuleAlbaranesCliente = class(TDataModuleBase, IDataModuleAlbaranesCliente, IDataModuleAlbaranesClienteReport) TDataModuleAlbaranesCliente = class(TDataModuleBase, IDataModuleAlbaranesCliente, IDataModuleAlbaranesClienteReport)
@ -34,9 +34,10 @@ type
function NewItem : IBizAlbaranCliente; function NewItem : IBizAlbaranCliente;
// Report // Report
function GetReport(const AID: String): Binary; function GetRptAlbaranes(const ListaID: TIntegerList): Binary;
function GetRptWordAlbaran(const AID: Integer): Binary; function GetRptWordAlbaran(const AID: Integer): Binary;
function GetEtiquetas(const AID: Integer; withRefCliente: Boolean): Binary; function GetEtiquetas(const AID: Integer; withRefCliente: Boolean): Binary;
function GetRptPDFAlbaran(const AID: Integer): Binary;
end; end;
implementation implementation
@ -60,15 +61,36 @@ begin
RORemoteService.Message := dmConexion.Message; RORemoteService.Message := dmConexion.Message;
end; end;
function TDataModuleAlbaranesCliente.GetReport(const AID: String): Binary; function TDataModuleAlbaranesCliente.GetRptAlbaranes(const ListaID: TIntegerList): Binary;
var
AParam : TIntegerArray;
begin begin
Result := (RORemoteService as IsrvAlbaranesCliente).GenerateReport(AID); AParam := ListaID.ToIntegerArray;
try
Result := (RORemoteService as IsrvAlbaranesCliente).GenerarInforme(AParam);
finally
FreeAndNil(AParam);
end;
end;
function TDataModuleAlbaranesCliente.GetRptPDFAlbaran(
const AID: Integer): Binary;
var
AParam : TIntegerArray;
begin
AParam := TIntegerArray.Create;
try
AParam.Add(AID);
Result := (RORemoteService as IsrvAlbaranesCliente).GenerarInforme(AParam);
finally
FreeAndNil(AParam);
end;
end; end;
function TDataModuleAlbaranesCliente.GetRptWordAlbaran( function TDataModuleAlbaranesCliente.GetRptWordAlbaran(
const AID: Integer): Binary; const AID: Integer): Binary;
begin begin
Result := (RORemoteService as IsrvAlbaranesCliente).GenerateReportEnWord(AID) Result := (RORemoteService as IsrvAlbaranesCliente).GenerarInformeEnWord(AID)
end; end;
function TDataModuleAlbaranesCliente.NewItem: IBizAlbaranCliente; function TDataModuleAlbaranesCliente.NewItem: IBizAlbaranCliente;
@ -96,7 +118,7 @@ end;
function TDataModuleAlbaranesCliente.GetEtiquetas(const AID: Integer; withRefCliente: Boolean): Binary; function TDataModuleAlbaranesCliente.GetEtiquetas(const AID: Integer; withRefCliente: Boolean): Binary;
begin begin
Result := (RORemoteService as IsrvAlbaranesCliente).GenerateEtiquetas(AID, withRefCliente) Result := (RORemoteService as IsrvAlbaranesCliente).GenerarInformeEtiquetas(AID, withRefCliente)
end; end;
function TDataModuleAlbaranesCliente.GetItem(const ID: Integer): IBizAlbaranCliente; function TDataModuleAlbaranesCliente.GetItem(const ID: Integer): IBizAlbaranCliente;

View File

@ -3,13 +3,14 @@ unit uIDataModuleAlbaranesClienteReport;
interface interface
uses uses
uROTypes; uROTypes, uIntegerListUtils;
type type
IDataModuleAlbaranesClienteReport = interface IDataModuleAlbaranesClienteReport = interface
['{42C55204-5AB9-403E-8385-1A62B02D8234}'] ['{42C55204-5AB9-403E-8385-1A62B02D8234}']
function GetReport(const AID: String): Binary; function GetRptAlbaranes(const AListaID: TIntegerList): Binary;
function GetRptWordAlbaran(const AID: Integer): Binary; function GetRptWordAlbaran(const AID: Integer): Binary;
function GetRptPDFAlbaran(const AID: Integer): Binary;
function GetEtiquetas(const AID: Integer; withRefCliente: Boolean): Binary; function GetEtiquetas(const AID: Integer; withRefCliente: Boolean): Binary;
end; end;

View File

@ -1,8 +1,8 @@
object RptAlbaranesCliente: TRptAlbaranesCliente object RptAlbaranesCliente: TRptAlbaranesCliente
OldCreateOrder = True OldCreateOrder = True
OnCreate = DataModuleCreate OnCreate = DataModuleCreate
Height = 490 Height = 471
Width = 447 Width = 448
object DADSCabecera: TDADataSource object DADSCabecera: TDADataSource
DataSet = tbl_Cabecera.Dataset DataSet = tbl_Cabecera.Dataset
DataTable = tbl_Cabecera DataTable = tbl_Cabecera
@ -1131,4 +1131,18 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
Left = 344 Left = 344
Top = 128 Top = 128
end end
object frxPDFExport1: TfrxPDFExport
ShowDialog = False
UseFileCache = True
ShowProgress = False
PrintOptimized = True
Outline = False
Author = 'FactuGES'
Subject = 'FactuGES'
Background = False
Creator = 'FactuGES'
HTMLTags = True
Left = 344
Top = 304
end
end end

View File

@ -8,7 +8,7 @@ uses
uDADataTable, uDACDSDataTable, DB, uDAClasses, frxChart, frxGradient, uDADataTable, uDACDSDataTable, DB, uDAClasses, frxChart, frxGradient,
frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDABINAdapter, uROTypes, frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDABINAdapter, uROTypes,
uDAInterfaces, uDADataStreamer, IBCustomDataSet, IBQuery, IBDatabase, uDAInterfaces, uDADataStreamer, IBCustomDataSet, IBQuery, IBDatabase,
uDAMemDataTable; uDAMemDataTable, frxExportPDF, FactuGES_Intf;
type type
TRptAlbaranesCliente = class(TDataModule) TRptAlbaranesCliente = class(TDataModule)
@ -61,14 +61,16 @@ type
tbl_Detalles: TDAMemDataTable; tbl_Detalles: TDAMemDataTable;
schReport: TDASchema; schReport: TDASchema;
DataDictionary: TDADataDictionary; DataDictionary: TDADataDictionary;
frxPDFExport1: TfrxPDFExport;
procedure DataModuleCreate(Sender: TObject); procedure DataModuleCreate(Sender: TObject);
private private
FConnection: IDAConnection; FConnection: IDAConnection;
//Genera cada uno de los albaranes a imprimir //Genera cada uno de los albaranes a imprimir
procedure GenerarAlbaran(const AID: integer); overload; procedure _GenerarAlbaran(const AID: Integer);
public public
function GenerarAlbaran(const AID : String): Binary; overload; function GenerarAlbaran(const AListaID : TIntegerArray): Binary;
function GenerarEtiquetas(const AID : Integer; withRefCliente: Boolean): Binary; function GenerarEtiquetas(const AID : Integer; withRefCliente: Boolean): Binary;
function GenerarAlbaranEnPDF(const ListaID : TIntegerArray): Binary;
end; end;
implementation implementation
@ -98,30 +100,44 @@ begin
frxReport.EngineOptions.NewSilentMode := simReThrow; frxReport.EngineOptions.NewSilentMode := simReThrow;
end; end;
function TRptAlbaranesCliente.GenerarAlbaran(const AID: String): Binary; function TRptAlbaranesCliente.GenerarAlbaran(const AListaID : TIntegerArray): Binary;
var var
ID_Albaranes: TStringList;
i: Integer; i: Integer;
begin begin
Result := Binary.Create; Result := Binary.Create;
//FConnection.BeginTransaction; <--- Creo que no va a hacer falta. //FConnection.BeginTransaction; <--- Creo que no va a hacer falta.
try try
ID_Albaranes := TStringList.Create;
ID_Albaranes.CommaText := AID;
//Vamos generando todos y cada uno de los albaranes recibidos //Vamos generando todos y cada uno de los albaranes recibidos
for i := 0 to ID_Albaranes.Count - 1 do for i := 0 to AListaID.Count - 1 do
GenerarAlbaran(StrToInt(ID_Albaranes.Strings[i])); _GenerarAlbaran(AListaID.Items[i]);
frxReport.PreviewPages.SaveToStream(Result); frxReport.PreviewPages.SaveToStream(Result);
finally finally
//FConnection.RollbackTransaction; <--- Creo que no va a hacer falta. //FConnection.RollbackTransaction; <--- Creo que no va a hacer falta.
end; end;
end; end;
procedure TRptAlbaranesCliente.GenerarAlbaran(const AID: integer); function TRptAlbaranesCliente.GenerarAlbaranEnPDF(
const ListaID: TIntegerArray): Binary;
var
i: Integer;
begin
Result := Binary.Create;
//FConnection.BeginTransaction; <--- Creo que no va a hacer falta.
try
//Vamos generando todos y cada uno de los presupuestos recibidos
for i := 0 to ListaID.Count - 1 do
_GenerarAlbaran(ListaID.Items[i]);
frxPDFExport1.Stream := Result;
frxReport.Export(frxPDFExport1)
finally
//FConnection.RollbackTransaction; <--- Creo que no va a hacer falta.
end;
end;
procedure TRptAlbaranesCliente._GenerarAlbaran(const AID: Integer);
var var
AStream: TMemoryStream; AStream: TMemoryStream;
dsMaster: IDADataset; dsMaster: IDADataset;

View File

@ -30,12 +30,12 @@ type
procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; var aConnectionName: string); procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; var aConnectionName: string);
procedure DARemoteServiceBeforeGetDatasetData(const Dataset: IDADataset; const IncludeSchema: Boolean; const MaxRecords: Integer); procedure DARemoteServiceBeforeGetDatasetData(const Dataset: IDADataset; const IncludeSchema: Boolean; const MaxRecords: Integer);
procedure DARemoteServiceCreate(Sender: TObject); procedure DARemoteServiceCreate(Sender: TObject);
private
protected protected
{ IsrvAlbaranesCliente methods } { IsrvAlbaranesCliente methods }
function GenerateReport(const ID: String): Binary; function GenerarInforme(const ListaID: TIntegerArray): Binary;
function GenerateEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary; function GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary;
function GenerateReportEnWord(const ID: Integer): Binary; function GenerarInformeEnWord(const ID: Integer): Binary;
function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
end; end;
implementation implementation
@ -78,7 +78,20 @@ begin
ConnectionName := dmServer.ConnectionName; ConnectionName := dmServer.ConnectionName;
end; end;
function TsrvAlbaranesCliente.GenerateEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary; function TsrvAlbaranesCliente.GenerarInformeEnPDF(
const ListaID: TIntegerArray): Binary;
var
AReportGenerator : TRptAlbaranesCliente;
begin
AReportGenerator := TRptAlbaranesCliente.Create(nil);
try
Result := AReportGenerator.GenerarAlbaranEnPDF(ListaID);
finally
FreeAndNIL(AReportGenerator);
end;
end;
function TsrvAlbaranesCliente.GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary;
//var //var
// AReportGenerator : TRptAlbaranesCliente; // AReportGenerator : TRptAlbaranesCliente;
begin begin
@ -92,19 +105,19 @@ begin
} }
end; end;
function TsrvAlbaranesCliente.GenerateReport(const ID: String): Binary; function TsrvAlbaranesCliente.GenerarInforme(const ListaID: TIntegerArray): Binary;
var var
AReportGenerator : TRptAlbaranesCliente; AReportGenerator : TRptAlbaranesCliente;
begin begin
AReportGenerator := TRptAlbaranesCliente.Create(nil); AReportGenerator := TRptAlbaranesCliente.Create(nil);
try try
Result := AReportGenerator.GenerarAlbaran(ID); Result := AReportGenerator.GenerarAlbaran(ListaID);
finally finally
FreeAndNIL(AReportGenerator); FreeAndNIL(AReportGenerator);
end; end;
end; end;
function TsrvAlbaranesCliente.GenerateReportEnWord(const ID: Integer): Binary; function TsrvAlbaranesCliente.GenerarInformeEnWord(const ID: Integer): Binary;
var var
AReportGenerator : TRptWordAlbaranCliente; AReportGenerator : TRptWordAlbaranCliente;
AFicheroTMP : TFileName; AFicheroTMP : TFileName;

View File

@ -1,5 +1,7 @@
inherited fEditorAlbaranesClientePreview: TfEditorAlbaranesClientePreview inherited fEditorAlbaranesClientePreview: TfEditorAlbaranesClientePreview
Caption = 'Previsualizar el albar'#225'n de cliente' Caption = 'Previsualizar el albar'#225'n de cliente'
ExplicitWidth = 320
ExplicitHeight = 240
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
inherited TBXDock: TTBXDock inherited TBXDock: TTBXDock

View File

@ -31,21 +31,14 @@ uses
procedure TfEditorAlbaranesClientePreview.actExportarRTFExecute( procedure TfEditorAlbaranesClientePreview.actExportarRTFExecute(
Sender: TObject); Sender: TObject);
var var
AListaID : TStringList;
I: Integer; I: Integer;
begin begin
// inherited; <- No llamar al padre // inherited; <- No llamar al padre
if not Assigned(Controller) then if not Assigned(Controller) then
raise Exception.Create('No se ha asignado el controlador necesario'); raise Exception.Create('No se ha asignado el controlador necesario');
AListaID := TStringList.Create; for I := 0 to ListaID.Count - 1 do
try (Controller as IAlbaranesClienteReportController).ExportToWord(ListaID[I]);
AListaID.CommaText := Self.ListaID;
for I := 0 to AListaID.Count - 1 do
(Controller as IAlbaranesClienteReportController).ExportToWord(StrToInt(AListaID[I]));
finally
FreeAndNIL(AListaID);
end;
end; end;
end. end.

View File

@ -10,7 +10,7 @@ uses
uBizDireccionesContacto, uBizInventario; uBizDireccionesContacto, uBizInventario;
type type
IAlbaranesProveedorController = interface(IObservador) IAlbaranesProveedorController = interface(IControllerBase)
['{E2FA2312-EDBD-4E80-B3D7-A8784F6A4E39}'] ['{E2FA2312-EDBD-4E80-B3D7-A8784F6A4E39}']
function GetProveedorController: IProveedoresController; function GetProveedorController: IProveedoresController;
procedure SetProveedorController(const Value: IProveedoresController); procedure SetProveedorController(const Value: IProveedoresController);
@ -56,7 +56,7 @@ type
procedure Print(AAlbaran : IBizAlbaranProveedor; AllItems: Boolean = false); procedure Print(AAlbaran : IBizAlbaranProveedor; AllItems: Boolean = false);
end; end;
TAlbaranesProveedorController = class(TObservador, IAlbaranesProveedorController) TAlbaranesProveedorController = class(TControllerBase, IAlbaranesProveedorController)
protected protected
FDataModule : IDataModuleAlbaranesProveedor; FDataModule : IDataModuleAlbaranesProveedor;
FProveedorController : IProveedoresController; FProveedorController : IProveedoresController;

View File

@ -31,9 +31,6 @@ type
procedure DARemoteServiceCreate(Sender: TObject); procedure DARemoteServiceCreate(Sender: TObject);
procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject;
var aConnectionName: string); var aConnectionName: string);
protected
{ IsrvAlbaranesProveedor methods }
function GenerateReport(const ID: String): Binary;
end; end;
implementation implementation
@ -78,19 +75,6 @@ begin
ConnectionName := dmServer.ConnectionName; ConnectionName := dmServer.ConnectionName;
end; end;
function TsrvAlbaranesProveedor.GenerateReport(const ID: String): Binary;
//var
// AReportGenerator : TRptAlbaranesProveedor;
begin
{ AReportGenerator := TRptAlbaranesProveedor.Create(nil);
try
Result := AReportGenerator.GenerarAlbaran(ID);
finally
FreeAndNIL(AReportGenerator);
end;
}
end;
initialization initialization
TROClassFactory.Create('srvAlbaranesProveedor', Create_srvAlbaranesProveedor, TsrvAlbaranesProveedor_Invoker); TROClassFactory.Create('srvAlbaranesProveedor', Create_srvAlbaranesProveedor, TsrvAlbaranesProveedor_Invoker);

View File

@ -53,7 +53,7 @@ uses
Forms, Classes, Windows, SysUtils, Controls, cxControls, uDialogUtils, uDataModuleClientes, uEditorRegistryUtils, Forms, Classes, Windows, SysUtils, Controls, cxControls, uDialogUtils, uDataModuleClientes, uEditorRegistryUtils,
uDataTableUtils, uDADataTable, DB, schContactosClient_Intf, uEtiquetasContactosReportController, uDataTableUtils, uDADataTable, DB, schContactosClient_Intf, uEtiquetasContactosReportController,
uIEditorElegirClientes, uIEditorElegirDireccionEntrega, uEditorGridBase, uIEditorElegirClientes, uIEditorElegirDireccionEntrega, uEditorGridBase,
Dialogs; Dialogs, uIntegerListUtils;
{ TClientesController } { TClientesController }
@ -220,10 +220,10 @@ end;
procedure TClientesController.Preview(ACliente: IBizCliente; AllItems: Boolean); procedure TClientesController.Preview(ACliente: IBizCliente; AllItems: Boolean);
var var
AReportController : IEtiquetasContactosReportController; AReportController : IEtiquetasContactosReportController;
ListaID: TStringList; ListaID: TIntegerList;
begin begin
AReportController := TEtiquetasContactosReportController.Create; AReportController := TEtiquetasContactosReportController.Create;
ListaID := TStringList.Create; ListaID := TIntegerList.Create;
try try
//Si deseamos previsualizar todos los items del objeto albaran //Si deseamos previsualizar todos los items del objeto albaran
@ -234,31 +234,30 @@ begin
First; First;
while not EOF do while not EOF do
begin begin
ListaID.Add(IntToStr(ACliente.ID)); ListaID.Add(ACliente.ID);
Next; Next;
end; end;
end; end;
end end
//Solo previsualizamos el item seleccionado //Solo previsualizamos el item seleccionado
else else
ListaID.Add(IntToStr(ACliente.ID)); ListaID.Add(ACliente.ID);
AReportController.Preview(ListaID.CommaText);
AReportController.Preview(ListaID);
finally finally
AReportController := NIL; AReportController := NIL;
ListaID.Free; FreeANDNIL(ListaID);
end; end;
end; end;
procedure TClientesController.Print(ACliente: IBizCliente; AllItems: Boolean); procedure TClientesController.Print(ACliente: IBizCliente; AllItems: Boolean);
var var
AReportController : IEtiquetasContactosReportController; AReportController : IEtiquetasContactosReportController;
ListaID: TStringList; ListaID: TIntegerList;
begin begin
AReportController := TEtiquetasContactosReportController.Create; AReportController := TEtiquetasContactosReportController.Create;
ListaID := TStringList.Create; ListaID := TIntegerList.Create;
try try
//Si deseamos previsualizar todos los items del objeto albaran //Si deseamos previsualizar todos los items del objeto albaran
@ -269,20 +268,20 @@ begin
First; First;
while not EOF do while not EOF do
begin begin
ListaID.Add(IntToStr(ACliente.ID)); ListaID.Add(ACliente.ID);
Next; Next;
end; end;
end; end;
end end
//Solo previsualizamos el item seleccionado //Solo previsualizamos el item seleccionado
else else
ListaID.Add(IntToStr(ACliente.ID)); ListaID.Add(ACliente.ID);
AReportController.Print(ListaID.CommaText); AReportController.Print(ListaID);
finally finally
AReportController := NIL; AReportController := NIL;
ListaID.Free; FreeANDNil(ListaID);
end; end;
end; end;

View File

@ -48,7 +48,7 @@ implementation
uses uses
Windows, SysUtils, cxControls, Dialogs, uDataModuleEmpleados, uEditorRegistryUtils, Windows, SysUtils, cxControls, Dialogs, uDataModuleEmpleados, uEditorRegistryUtils,
uDataTableUtils, uDADataTable, DB, schContactosClient_Intf, uFichasEmpleadoReportController, uDataTableUtils, uDADataTable, DB, schContactosClient_Intf, uFichasEmpleadoReportController,
uEditorGridBase; uEditorGridBase, uIntegerListUtils;
{ TEmpleadoController } { TEmpleadoController }
@ -186,13 +186,11 @@ end;
procedure TEmpleadosController.Preview(AEmpleado: IBizEmpleado; AllItems: Boolean); procedure TEmpleadosController.Preview(AEmpleado: IBizEmpleado; AllItems: Boolean);
var var
AReportController : IFichasEmpleadoReportController; AReportController : IFichasEmpleadoReportController;
ID_Fichas: TStringList; ID_Fichas: TIntegerList;
begin begin
AReportController := TFichasEmpleadoReportController.Create; AReportController := TFichasEmpleadoReportController.Create;
ID_Fichas := TStringList.Create; ID_Fichas := TIntegerList.Create;
try try
//Si deseamos previsualizar todos los items del objeto albaran //Si deseamos previsualizar todos los items del objeto albaran
if AllItems then if AllItems then
begin begin
@ -201,31 +199,30 @@ begin
First; First;
while not EOF do while not EOF do
begin begin
ID_Fichas.Add(IntToStr(AEmpleado.ID)); ID_Fichas.Add(AEmpleado.ID);
Next; Next;
end; end;
end; end;
end end
//Solo previsualizamos el item seleccionado //Solo previsualizamos el item seleccionado
else else
ID_Fichas.Add(IntToStr(AEmpleado.ID)); ID_Fichas.Add(AEmpleado.ID);
AReportController.Preview(ID_Fichas.CommaText);
AReportController.Preview(ID_Fichas);
finally finally
AReportController := NIL; AReportController := NIL;
ID_Fichas.Free; FreeANDNil(ID_Fichas);
end; end;
end; end;
procedure TEmpleadosController.Print(AEmpleado: IBizEmpleado; AllItems: Boolean); procedure TEmpleadosController.Print(AEmpleado: IBizEmpleado; AllItems: Boolean);
var var
AReportController : IFichasEmpleadoReportController; AReportController : IFichasEmpleadoReportController;
ID_Fichas: TStringList; ID_Fichas: TIntegerList;
begin begin
AReportController := TFichasEmpleadoReportController.Create; AReportController := TFichasEmpleadoReportController.Create;
ID_Fichas := TStringList.Create; ID_Fichas := TIntegerList.Create;
try try
//Si deseamos previsualizar todos los items del objeto albaran //Si deseamos previsualizar todos los items del objeto albaran
@ -236,20 +233,19 @@ begin
First; First;
while not EOF do while not EOF do
begin begin
ID_Fichas.Add(IntToStr(AEmpleado.ID)); ID_Fichas.Add(AEmpleado.ID);
Next; Next;
end; end;
end; end;
end end
//Solo previsualizamos el item seleccionado //Solo previsualizamos el item seleccionado
else else
ID_Fichas.Add(IntToStr(AEmpleado.ID)); ID_Fichas.Add(AEmpleado.ID);
AReportController.Print(ID_Fichas.CommaText);
AReportController.Print(ID_Fichas);
finally finally
AReportController := NIL; AReportController := NIL;
ID_Fichas.Free; FreeANDNIL(ID_Fichas);
end; end;
end; end;

View File

@ -4,13 +4,13 @@ interface
uses uses
Classes, SysUtils, uDADataTable, uControllerBase, uIDataModuleEtiquetasContactosReport, Classes, SysUtils, uDADataTable, uControllerBase, uIDataModuleEtiquetasContactosReport,
uEmpleadosController; uEmpleadosController, uIntegerListUtils;
type type
IEtiquetasContactosReportController = interface(IControllerBase) IEtiquetasContactosReportController = interface(IControllerBase)
['{76BB35E3-554E-4D30-8D3E-54E488EF82E2}'] ['{76BB35E3-554E-4D30-8D3E-54E488EF82E2}']
procedure Preview(const AContactosID : String); procedure Preview(const ListaID : TIntegerList);
procedure Print(const AContactosID : String); procedure Print(const ListaID : TIntegerList);
end; end;
TEtiquetasContactosReportController = class(TControllerBase, IEtiquetasContactosReportController) TEtiquetasContactosReportController = class(TControllerBase, IEtiquetasContactosReportController)
@ -21,8 +21,8 @@ type
constructor Create; override; constructor Create; override;
destructor Destroy; override; destructor Destroy; override;
procedure Preview(const AContactosID : String); procedure Preview(const ListaID : TIntegerList);
procedure Print(const AContactosID : String); procedure Print(const ListaID : TIntegerList);
end; end;
@ -51,7 +51,7 @@ begin
inherited; inherited;
end; end;
procedure TEtiquetasContactosReportController.Preview(const AContactosID : String); procedure TEtiquetasContactosReportController.Preview(const ListaID : TIntegerList);
var var
AStream: Binary; AStream: Binary;
AEditor : IEditorEtiquetasContactosPreview; AEditor : IEditorEtiquetasContactosPreview;
@ -59,15 +59,19 @@ begin
AEditor := NIL; AEditor := NIL;
ShowHourglassCursor; ShowHourglassCursor;
try try
AStream := FDataModule.GetReport(AContactosID); AStream := FDataModule.GetReport(ListaID);
try try
CreateEditor('EditorEtiquetasContactosPreview', IEditorEtiquetasContactosPreview, AEditor); CreateEditor('EditorEtiquetasContactosPreview', IEditorEtiquetasContactosPreview, AEditor);
if Assigned(AEditor) then if Assigned(AEditor) then
with AEditor do
begin begin
LoadFromStream(AStream); try
Preview; AEditor.Controller := Self;
Release; AEditor.ListaID := ListaID;
AEditor.LoadFromStream(AStream);
AEditor.Preview;
finally
AEditor.Release;
end;
end; end;
finally finally
FreeAndNil(AStream); FreeAndNil(AStream);
@ -78,7 +82,7 @@ begin
end; end;
end; end;
procedure TEtiquetasContactosReportController.Print(const AContactosID : String); procedure TEtiquetasContactosReportController.Print(const ListaID : TIntegerList);
var var
AStream: Binary; AStream: Binary;
AEditor : IEditorEtiquetasContactosPreview; AEditor : IEditorEtiquetasContactosPreview;
@ -86,15 +90,19 @@ begin
AEditor := NIL; AEditor := NIL;
ShowHourglassCursor; ShowHourglassCursor;
try try
AStream := FDataModule.GetReport(AContactosID); AStream := FDataModule.GetReport(ListaID);
try try
CreateEditor('EditorEtiquetasContactosPreview', IEditorEtiquetasContactosPreview, AEditor); CreateEditor('EditorEtiquetasContactosPreview', IEditorEtiquetasContactosPreview, AEditor);
if Assigned(AEditor) then if Assigned(AEditor) then
with AEditor do
begin begin
LoadFromStream(AStream); try
Print; AEditor.Controller := Self;
Release; AEditor.ListaID := ListaID;
AEditor.LoadFromStream(AStream);
AEditor.Print;
finally
AEditor.Release;
end;
end; end;
finally finally
FreeAndNil(AStream); FreeAndNil(AStream);

View File

@ -4,13 +4,13 @@ interface
uses uses
Classes, SysUtils, uDADataTable, uControllerBase, uIDataModuleFichasEmpleadoReport, Classes, SysUtils, uDADataTable, uControllerBase, uIDataModuleFichasEmpleadoReport,
uEmpleadosController; uEmpleadosController, uIntegerListUtils;
type type
IFichasEmpleadoReportController = interface(IControllerBase) IFichasEmpleadoReportController = interface(IControllerBase)
['{8E43F55F-7D5A-4778-8523-7C105EAEB1AB}'] ['{8E43F55F-7D5A-4778-8523-7C105EAEB1AB}']
procedure Preview(const AFichaID : String); procedure Preview(const ListaID : TIntegerList);
procedure Print(const AFichaID : String); procedure Print(const ListaID : TIntegerList);
end; end;
TFichasEmpleadoReportController = class(TControllerBase, IFichasEmpleadoReportController) TFichasEmpleadoReportController = class(TControllerBase, IFichasEmpleadoReportController)
@ -21,8 +21,8 @@ type
constructor Create; override; constructor Create; override;
destructor Destroy; override; destructor Destroy; override;
procedure Preview(const AFichaID : String); procedure Preview(const ListaID : TIntegerList);
procedure Print(const AFichaID : String); procedure Print(const ListaID : TIntegerList);
end; end;
@ -51,7 +51,7 @@ begin
inherited; inherited;
end; end;
procedure TFichasEmpleadoReportController.Preview(const AFichaID : String); procedure TFichasEmpleadoReportController.Preview(const ListaID : TIntegerList);
var var
AStream: Binary; AStream: Binary;
AEditor : IEditorFichasEmpleadoPreview; AEditor : IEditorFichasEmpleadoPreview;
@ -59,15 +59,19 @@ begin
AEditor := NIL; AEditor := NIL;
ShowHourglassCursor; ShowHourglassCursor;
try try
AStream := FDataModule.GetReport(AFichaID); AStream := FDataModule.GetReport(ListaID);
try try
CreateEditor('EditorFichasEmpleadoPreview', IEditorFichasEmpleadoPreview, AEditor); CreateEditor('EditorFichasEmpleadoPreview', IEditorFichasEmpleadoPreview, AEditor);
if Assigned(AEditor) then if Assigned(AEditor) then
with AEditor do
begin begin
LoadFromStream(AStream); try
Preview; AEditor.Controller := Self;
Release; AEditor.ListaID := ListaID;
AEditor.LoadFromStream(AStream);
AEditor.Preview;
finally
AEditor.Release;
end;
end; end;
finally finally
FreeAndNil(AStream); FreeAndNil(AStream);
@ -78,7 +82,7 @@ begin
end; end;
end; end;
procedure TFichasEmpleadoReportController.Print(const AFichaID : String); procedure TFichasEmpleadoReportController.Print(const ListaID : TIntegerList);
var var
AStream: Binary; AStream: Binary;
AEditor : IEditorFichasEmpleadoPreview; AEditor : IEditorFichasEmpleadoPreview;
@ -87,15 +91,19 @@ begin
ShowHourglassCursor; ShowHourglassCursor;
try try
AStream := FDataModule.GetReport(AFichaID); AStream := FDataModule.GetReport(ListaID);
try try
CreateEditor('EditorFichasEmpleadoPreview', IEditorFichasEmpleadoPreview, AEditor); CreateEditor('EditorFichasEmpleadoPreview', IEditorFichasEmpleadoPreview, AEditor);
if Assigned(AEditor) then if Assigned(AEditor) then
with AEditor do
begin begin
LoadFromStream(AStream); try
Print; AEditor.Controller := Self;
Release; AEditor.ListaID := ListaID;
AEditor.LoadFromStream(AStream);
AEditor.Print;
finally
AEditor.Release;
end;
end; end;
finally finally
FreeAndNil(AStream); FreeAndNil(AStream);

View File

@ -51,7 +51,7 @@ uses
SysUtils, cxControls, Dialogs, uDataModuleProveedores, uEditorRegistryUtils, SysUtils, cxControls, Dialogs, uDataModuleProveedores, uEditorRegistryUtils,
uDataTableUtils, uDADataTable, DB, schContactosClient_Intf, uEtiquetasContactosReportController, uDataTableUtils, uDADataTable, DB, schContactosClient_Intf, uEtiquetasContactosReportController,
uIEditorElegirProveedores, Controls, uIEditorElegirDireccionEntrega, uIEditorElegirProveedores, Controls, uIEditorElegirDireccionEntrega,
uEditorGridBase, uDAInterfaces; uEditorGridBase, uDAInterfaces, uIntegerListUtils;
{ TProveedoresController } { TProveedoresController }
@ -232,11 +232,11 @@ end;
procedure TProveedoresController.Preview(AProveedor: IBizProveedor; AllItems: Boolean); procedure TProveedoresController.Preview(AProveedor: IBizProveedor; AllItems: Boolean);
var var
AReportController : IEtiquetasContactosReportController; AReportController : IEtiquetasContactosReportController;
ListaID: TStringList; ListaID: TIntegerList;
begin begin
AReportController := TEtiquetasContactosReportController.Create; AReportController := TEtiquetasContactosReportController.Create;
ListaID := TStringList.Create; ListaID := TIntegerList.Create;
try try
//Si deseamos previsualizar todos los items del objeto albaran //Si deseamos previsualizar todos los items del objeto albaran
@ -247,34 +247,32 @@ begin
First; First;
while not EOF do while not EOF do
begin begin
ListaID.Add(IntToStr(AProveedor.ID)); ListaID.Add(AProveedor.ID);
Next; Next;
end; end;
end; end;
end end
//Solo previsualizamos el item seleccionado //Solo previsualizamos el item seleccionado
else else
ListaID.Add(IntToStr(AProveedor.ID)); ListaID.Add(AProveedor.ID);
AReportController.Preview(ListaID.CommaText);
AReportController.Preview(ListaID);
finally finally
AReportController := NIL; AReportController := NIL;
ListaID.Free; FreeANDNil(ListaID);
end; end;
end; end;
procedure TProveedoresController.Print(AProveedor: IBizProveedor; AllItems: Boolean); procedure TProveedoresController.Print(AProveedor: IBizProveedor; AllItems: Boolean);
var var
AReportController : IEtiquetasContactosReportController; AReportController : IEtiquetasContactosReportController;
ListaID: TStringList; ListaID: TIntegerList;
begin begin
AReportController := TEtiquetasContactosReportController.Create; AReportController := TEtiquetasContactosReportController.Create;
ListaID := TStringList.Create; ListaID := TIntegerList.Create;
try try
//Si deseamos previsualizar todos los items del objeto albaran //Si deseamos previsualizar todos los items del objeto albaran
if AllItems then if AllItems then
begin begin
@ -283,20 +281,20 @@ begin
First; First;
while not EOF do while not EOF do
begin begin
ListaID.Add(IntToStr(AProveedor.ID)); ListaID.Add(AProveedor.ID);
Next; Next;
end; end;
end; end;
end end
//Solo previsualizamos el item seleccionado //Solo previsualizamos el item seleccionado
else else
ListaID.Add(IntToStr(AProveedor.ID)); ListaID.Add(AProveedor.ID);
AReportController.Print(ListaID.CommaText); AReportController.Print(ListaID);
finally finally
AReportController := NIL; AReportController := NIL;
ListaID.Free; FreeANDNil(ListaID);
end; end;
end; end;

View File

@ -11,7 +11,8 @@ uses
uBizDireccionesContacto, uIDataModuleEtiquetasContactosReport, uBizDireccionesContacto, uIDataModuleEtiquetasContactosReport,
uIDataModuleContactos, uDADesigntimeCall, uROTypes, uRODynamicRequest, uIDataModuleContactos, uDADesigntimeCall, uROTypes, uRODynamicRequest,
uDAInterfaces, uDADataStreamer, uDARemoteDataAdapter, uDABin2DataStreamer, uDAInterfaces, uDADataStreamer, uDARemoteDataAdapter, uDABin2DataStreamer,
uDAMemDataTable, uDataModuleBase, uBizContactosPersonal; uDAMemDataTable, uDataModuleBase, uBizContactosPersonal,
uIntegerListUtils;
type type
TDataModuleContactos = class(TDataModuleBase, IDataModuleContactos, IDataModuleEtiquetasContactosReport) TDataModuleContactos = class(TDataModuleBase, IDataModuleContactos, IDataModuleEtiquetasContactosReport)
@ -35,7 +36,7 @@ type
function _GetPersonal: IBizContactoPersonal; function _GetPersonal: IBizContactoPersonal;
// Report // Report
function GetReport(const AContactosID: String): Binary; function GetReport(const ListaID: TIntegerList): Binary;
end; end;
implementation implementation
@ -59,9 +60,16 @@ begin
// //
end; end;
function TDataModuleContactos.GetReport(const AContactosID: String): Binary; function TDataModuleContactos.GetReport(const ListaID: TIntegerList): Binary;
var
AParam : TIntegerArray;
begin begin
Result := (RORemoteService as IsrvContactos).GenerateEtiquetasReport(AContactosID); AParam := ListaID.ToIntegerArray;
try
Result := (RORemoteService as IsrvContactos).GenerarInformeEtiquetas(AParam);
finally
FreeANDNIL(AParam);
end;
end; end;
function TDataModuleContactos._GetDatosBancarios: IBizContactosDatosBancarios; function TDataModuleContactos._GetDatosBancarios: IBizContactosDatosBancarios;

View File

@ -9,7 +9,7 @@ uses
uROClient, uROBinMessage, uROWinInetHttpChannel, uBizGruposEmpleado, uROTypes, uROClient, uROBinMessage, uROWinInetHttpChannel, uBizGruposEmpleado, uROTypes,
uIDataModuleEmpleados, uBizContactos, uDADesigntimeCall, uIDataModuleFichasEmpleadoReport, uIDataModuleEmpleados, uBizContactos, uDADesigntimeCall, uIDataModuleFichasEmpleadoReport,
uDAInterfaces, uDAMemDataTable, uDADataStreamer, uDABin2DataStreamer, uDAInterfaces, uDAMemDataTable, uDADataStreamer, uDABin2DataStreamer,
uDARemoteDataAdapter; uDARemoteDataAdapter, uIntegerListUtils;
type type
TDataModuleEmpleados = class(TDataModuleContactos, IDataModuleEmpleados, IDataModuleFichasEmpleadoReport) TDataModuleEmpleados = class(TDataModuleContactos, IDataModuleEmpleados, IDataModuleFichasEmpleadoReport)
@ -27,7 +27,7 @@ type
function DarListaContratosEmpleado : TStringList; function DarListaContratosEmpleado : TStringList;
// Report // Report
function GetReport(const AFichaID: String): Binary; function GetReport(const ListaID: TIntegerList): Binary;
end; end;
@ -105,9 +105,16 @@ begin
end; end;
end; end;
function TDataModuleEmpleados.GetReport(const AFichaID: String): Binary; function TDataModuleEmpleados.GetReport(const ListaID: TIntegerList): Binary;
var
AParam : TIntegerArray;
begin begin
Result := (RORemoteService as IsrvContactos).GenerateFichaEmpleadoReport(AFichaID); AParam := ListaID.ToIntegerArray;
try
Result := (RORemoteService as IsrvContactos).GenerarInformeFichaEmpleado(AParam)
finally
FreeANDNil(AParam);
end;
end; end;
function TDataModuleEmpleados.NewItem: IBizEmpleado; function TDataModuleEmpleados.NewItem: IBizEmpleado;

View File

@ -3,12 +3,12 @@ unit uIDataModuleEtiquetasContactosReport;
interface interface
uses uses
SysUtils, Classes, uROTypes; SysUtils, Classes, uROTypes, uIntegerListUtils;
type type
IDataModuleEtiquetasContactosReport = interface IDataModuleEtiquetasContactosReport = interface
['{26E68DED-5BD9-4227-B07F-9644BED7AE7B}'] ['{26E68DED-5BD9-4227-B07F-9644BED7AE7B}']
function GetReport(const AClientesID: String): Binary; function GetReport(const ListaID: TIntegerList): Binary;
end; end;
implementation implementation

View File

@ -3,12 +3,12 @@ unit uIDataModuleFichasEmpleadoReport;
interface interface
uses uses
SysUtils, Classes, uROTypes; SysUtils, Classes, uROTypes, uIntegerListUtils;
type type
IDataModuleFichasEmpleadoReport = interface IDataModuleFichasEmpleadoReport = interface
['{45EEB949-2AC0-459F-88B0-235444B005E4}'] ['{45EEB949-2AC0-459F-88B0-235444B005E4}']
function GetReport(const AFichaID: String): Binary; function GetReport(const ListaID: TIntegerList): Binary;
end; end;
implementation implementation

View File

@ -7,7 +7,8 @@ uses
Dialogs, frxClass, frxDBSet, uDAScriptingProvider, Dialogs, frxClass, frxDBSet, uDAScriptingProvider,
uDADataTable, uDACDSDataTable, DB, uDAClasses, frxChart, frxGradient, uDADataTable, uDACDSDataTable, DB, uDAClasses, frxChart, frxGradient,
frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDABINAdapter, uROTypes, frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDABINAdapter, uROTypes,
uDAInterfaces, uDADataStreamer, uDABin2DataStreamer, uDAMemDataTable; uDAInterfaces, uDADataStreamer, uDABin2DataStreamer, uDAMemDataTable,
FactuGES_Intf;
type type
TRptEtiquetasContacto = class(TDataModule) TRptEtiquetasContacto = class(TDataModule)
@ -29,7 +30,7 @@ type
private private
FConnection: IDAConnection; FConnection: IDAConnection;
public public
function GenerarInforme(const AID : String): Binary; overload; function GenerarInforme(const ListaID: TIntegerArray): Binary; overload;
end; end;
implementation implementation
@ -56,10 +57,12 @@ begin
frxReport.EngineOptions.NewSilentMode := simReThrow; frxReport.EngineOptions.NewSilentMode := simReThrow;
end; end;
function TRptEtiquetasContacto.GenerarInforme(const AID: String): Binary; function TRptEtiquetasContacto.GenerarInforme(const ListaID: TIntegerArray): Binary;
var var
AStream: TMemoryStream; AStream: TMemoryStream;
dsMaster: IDADataset; dsMaster: IDADataset;
i : Integer;
AWhereStr : String;
begin begin
Result := Binary.Create; Result := Binary.Create;
@ -69,7 +72,17 @@ begin
AStream := TMemoryStream.Create; AStream := TMemoryStream.Create;
try try
dsMaster := schReport.NewDataset(FConnection, ds_InformeContactos, [], [], False); //, ['ID'], ['611, 751']); //AID]); dsMaster := schReport.NewDataset(FConnection, ds_InformeContactos, [], [], False); //, ['ID'], ['611, 751']); //AID]);
dsMaster.Where.AddText(fld_ContactosID + ' in (' + AID + ')'); AWhereStr := fld_ContactosID + ' in (';
for i := 0 to ListaID.Count - 1 do
begin
if i > 0 then
AWhereStr := AWhereStr + ', ';
AWhereStr := AWhereStr + IntToStr(ListaID.Items[i]);
end;
AWhereStr := AWhereStr + ')';
dsMaster.Where.AddText(AWhereStr);
dsMaster.Open; dsMaster.Open;
AStream.Clear; AStream.Clear;

View File

@ -7,7 +7,8 @@ uses
Dialogs, frxClass, frxDBSet, uDAScriptingProvider, Dialogs, frxClass, frxDBSet, uDAScriptingProvider,
uDADataTable, uDACDSDataTable, DB, uDAClasses, frxChart, frxGradient, uDADataTable, uDACDSDataTable, DB, uDAClasses, frxChart, frxGradient,
frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDABINAdapter, uROTypes, frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDABINAdapter, uROTypes,
uDAInterfaces, uDADataStreamer, uDABin2DataStreamer, uDAMemDataTable; uDAInterfaces, uDADataStreamer, uDABin2DataStreamer, uDAMemDataTable,
FactuGES_Intf;
type type
TRptFichasEmpleado = class(TDataModule) TRptFichasEmpleado = class(TDataModule)
@ -29,9 +30,9 @@ type
private private
FConnection: IDAConnection; FConnection: IDAConnection;
//Genera cada uno de los albaranes a imprimir //Genera cada uno de los albaranes a imprimir
procedure GenerarFicha(const ID: integer); overload; procedure _GenerarFicha(const ID: Integer);
public public
function GenerarFicha(const AFichaID : String): Binary; overload; function GenerarFicha(const ListaID: TIntegerArray): Binary;
end; end;
implementation implementation
@ -58,31 +59,25 @@ begin
frxReport.EngineOptions.NewSilentMode := simReThrow; frxReport.EngineOptions.NewSilentMode := simReThrow;
end; end;
function TRptFichasEmpleado.GenerarFicha(const AFichaID: String): Binary; function TRptFichasEmpleado.GenerarFicha(const ListaID: TIntegerArray): Binary;
var var
ID_Fichas: TStringList;
i: Integer; i: Integer;
begin begin
Result := Binary.Create; Result := Binary.Create;
FConnection.BeginTransaction;
//FConnection.BeginTransaction; <--- Creo que no va a hacer falta.
try try
ID_Fichas := TStringList.Create;
ID_Fichas.CommaText := AFichaID;
//Vamos generando todos y cada uno de las fichas de empleado //Vamos generando todos y cada uno de las fichas de empleado
for i := 0 to ID_Fichas.Count - 1 do for i := 0 to ListaID.Count - 1 do
GenerarFicha(StrToInt(ID_Fichas.Strings[i])); _GenerarFicha(ListaID.Items[i]);
frxReport.PreviewPages.SaveToStream(Result); frxReport.PreviewPages.SaveToStream(Result);
finally finally
FConnection.RollbackTransaction; //FConnection.RollbackTransaction; <--- Creo que no va a hacer falta.
end; end;
end; end;
procedure TRptFichasEmpleado.GenerarFicha(const ID: integer); procedure TRptFichasEmpleado._GenerarFicha(const ID: Integer);
var var
AStream: TMemoryStream; AStream: TMemoryStream;
dsMaster: IDADataset; dsMaster: IDADataset;

View File

@ -40,8 +40,8 @@ type
procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject;
var aConnectionName: string); var aConnectionName: string);
public public
function GenerateFichaEmpleadoReport(const EmpleadoID: String): Binary; function GenerarInformeFichaEmpleado(const ListaID: TIntegerArray): Binary;
function GenerateEtiquetasReport(const ContactosID: String): Binary; function GenerarInformeEtiquetas(const ListaID: TIntegerArray): Binary;
function DarListaContratosEmpleados: String; function DarListaContratosEmpleados: String;
function DarListaDescripcionesProveedores: String; function DarListaDescripcionesProveedores: String;
end; end;
@ -137,25 +137,25 @@ begin
ConnectionName := dmServer.ConnectionName; ConnectionName := dmServer.ConnectionName;
end; end;
function TsrvContactos.GenerateEtiquetasReport(const ContactosID: String): Binary; function TsrvContactos.GenerarInformeEtiquetas(const ListaID: TIntegerArray): Binary;
var var
AReportGenerator : TRptEtiquetasContacto; AReportGenerator : TRptEtiquetasContacto;
begin begin
AReportGenerator := TRptEtiquetasContacto.Create(nil); AReportGenerator := TRptEtiquetasContacto.Create(nil);
try try
Result := AReportGenerator.GenerarInforme(ContactosID); Result := AReportGenerator.GenerarInforme(ListaID);
finally finally
FreeAndNIL(AReportGenerator); FreeAndNIL(AReportGenerator);
end; end;
end; end;
function TsrvContactos.GenerateFichaEmpleadoReport(const EmpleadoID: String): Binary; function TsrvContactos.GenerarInformeFichaEmpleado(const ListaID: TIntegerArray): Binary;
var var
AReportGenerator : TRptFichasEmpleado; AReportGenerator : TRptFichasEmpleado;
begin begin
AReportGenerator := TRptFichasEmpleado.Create(nil); AReportGenerator := TRptFichasEmpleado.Create(nil);
try try
Result := AReportGenerator.GenerarFicha(EmpleadoID); Result := AReportGenerator.GenerarFicha(ListaID);
finally finally
FreeAndNIL(AReportGenerator); FreeAndNIL(AReportGenerator);
end; end;

View File

@ -8,9 +8,6 @@ uses
type type
IEditorFacturasClientePreview = interface(IEditorPreview) IEditorFacturasClientePreview = interface(IEditorPreview)
['{0B893ED1-261A-4358-814E-18D7FD768E14}'] ['{0B893ED1-261A-4358-814E-18D7FD768E14}']
{ function PreviewGetController : IFacturasClienteReportController;
procedure PreviewSetController (const Value : IFacturasClienteReportController);
property PreviewController : IFacturasClienteReportController read PreviewGetController write PreviewSetController;}
end; end;

View File

@ -9,7 +9,7 @@ uses
uBizFacturasCliente; uBizFacturasCliente;
type type
IFacturasClienteController = interface(IObservador) IFacturasClienteController = interface(IControllerBase)
['{CAD20B4E-6D0B-4A1C-9306-B195824B6CAD}'] ['{CAD20B4E-6D0B-4A1C-9306-B195824B6CAD}']
function GetClienteController: IClientesController; function GetClienteController: IClientesController;
procedure SetClienteController(const Value: IClientesController); procedure SetClienteController(const Value: IClientesController);
@ -50,7 +50,7 @@ type
function ExtraerSeleccionados(ARecibosCliente: IBizFacturaCliente) : IBizFacturaCliente; function ExtraerSeleccionados(ARecibosCliente: IBizFacturaCliente) : IBizFacturaCliente;
end; end;
TFacturasClienteController = class(TObservador, IFacturasClienteController) TFacturasClienteController = class(TControllerBase, IFacturasClienteController)
private private
FDataModule : IDataModuleFacturasCliente; FDataModule : IDataModuleFacturasCliente;
FClienteController : IClientesController; FClienteController : IClientesController;
@ -118,7 +118,7 @@ uses
uAlbaranesClienteController, schAlbaranesClienteClient_Intf, uROTypes, uDetallesAlbaranClienteController, uAlbaranesClienteController, schAlbaranesClienteClient_Intf, uROTypes, uDetallesAlbaranClienteController,
uBizDetallesAlbaranCliente, uFacturasClienteReportController, uBizDetallesAlbaranCliente, uFacturasClienteReportController,
DateUtils, Forms, uFormasPagoController, uBizFormasPago, uIEditorElegirFacturasCliente, DateUtils, Forms, uFormasPagoController, uBizFormasPago, uIEditorElegirFacturasCliente,
uRecibosClienteController, uBizRecibosCliente; uRecibosClienteController, uBizRecibosCliente, uIntegerListUtils;
{procedure CopiarArticulosPedido(AOrigen: IBizDetallesPedidoCliente; {procedure CopiarArticulosPedido(AOrigen: IBizDetallesPedidoCliente;
@ -518,8 +518,6 @@ end;
function TFacturasClienteController.ValidarFactura(AFactura: IBizFacturaCliente): Boolean; function TFacturasClienteController.ValidarFactura(AFactura: IBizFacturaCliente): Boolean;
begin begin
Result := False;
if not Assigned(AFactura) then if not Assigned(AFactura) then
raise Exception.Create ('Factura no asignada'); raise Exception.Create ('Factura no asignada');
@ -895,11 +893,11 @@ end;
procedure TFacturasClienteController.Preview(AFactura: IBizFacturaCliente; AllItems: Boolean = false); procedure TFacturasClienteController.Preview(AFactura: IBizFacturaCliente; AllItems: Boolean = false);
var var
AReportController : IFacturasClienteReportController; AReportController : IFacturasClienteReportController;
ID_Facturas: TStringList; ID_Facturas: TIntegerList;
begin begin
AReportController := TFacturasClienteReportController.Create; AReportController := TFacturasClienteReportController.Create;
ID_Facturas := TStringList.Create; ID_Facturas := TIntegerList.Create;
try try
//Si deseamos previsualizar todos los items del objeto albaran //Si deseamos previsualizar todos los items del objeto albaran
@ -910,31 +908,31 @@ begin
First; First;
while not EOF do while not EOF do
begin begin
ID_Facturas.Add(IntToStr(AFactura.ID)); ID_Facturas.Add(AFactura.ID);
Next; Next;
end; end;
end; end;
end end
//Solo previsualizamos el item seleccionado //Solo previsualizamos el item seleccionado
else else
ID_Facturas.Add(IntToStr(AFactura.ID)); ID_Facturas.Add(AFactura.ID);
AReportController.Preview(ID_Facturas.CommaText); AReportController.Preview(ID_Facturas);
finally finally
AReportController := NIL; AReportController := NIL;
ID_Facturas.Free; FreeANDNIL(ID_Facturas);
end; end;
end; end;
procedure TFacturasClienteController.Print(AFactura: IBizFacturaCliente; AllItems: Boolean = false); procedure TFacturasClienteController.Print(AFactura: IBizFacturaCliente; AllItems: Boolean = false);
var var
AReportController : IFacturasClienteReportController; AReportController : IFacturasClienteReportController;
ID_Facturas: TStringList; ID_Facturas: TIntegerList;
begin begin
AReportController := TFacturasClienteReportController.Create; AReportController := TFacturasClienteReportController.Create;
ID_Facturas := TStringList.Create; ID_Facturas := TIntegerList.Create;
try try
//Si deseamos previsualizar todos los items del objeto albaran //Si deseamos previsualizar todos los items del objeto albaran
@ -945,20 +943,20 @@ begin
First; First;
while not EOF do while not EOF do
begin begin
ID_Facturas.Add(IntToStr(AFactura.ID)); ID_Facturas.Add(AFactura.ID);
Next; Next;
end; end;
end; end;
end end
//Solo previsualizamos el item seleccionado //Solo previsualizamos el item seleccionado
else else
ID_Facturas.Add(IntToStr(AFactura.ID)); ID_Facturas.Add(AFactura.ID);
AReportController.Print(ID_Facturas.CommaText); AReportController.Print(ID_Facturas);
finally finally
AReportController := NIL; AReportController := NIL;
ID_Facturas.Free; FreeANDNIL(ID_Facturas);
end; end;
end; end;

View File

@ -5,13 +5,13 @@ interface
uses uses
Classes, SysUtils, uDADataTable, uControllerBase, uIDataModuleFacturasClienteReport, Classes, SysUtils, uDADataTable, uControllerBase, uIDataModuleFacturasClienteReport,
uClientesController, uDetallesFacturaClienteController, uClientesController, uDetallesFacturaClienteController,
uBizFacturasCliente; uBizFacturasCliente, uIntegerListUtils;
type type
IFacturasClienteReportController = interface(IControllerBase) IFacturasClienteReportController = interface(IControllerBase)
['{A0F41767-4FF6-4BAE-9FC9-894DD721D756}'] ['{A0F41767-4FF6-4BAE-9FC9-894DD721D756}']
procedure Preview(const AListaID : String); procedure Preview(const AListaID : TIntegerList);
procedure Print(const AListaID : String); procedure Print(const AListaID : TIntegerList);
function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean; function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean;
end; end;
@ -24,8 +24,8 @@ type
constructor Create; override; constructor Create; override;
destructor Destroy; override; destructor Destroy; override;
procedure Preview(const AListaID : String); procedure Preview(const AListaID : TIntegerList);
procedure Print(const AListaID : String); procedure Print(const AListaID : TIntegerList);
function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean; function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean;
end; end;
@ -83,7 +83,7 @@ begin
end; end;
end; end;
procedure TFacturasClienteReportController.Preview(const AListaID : String); procedure TFacturasClienteReportController.Preview(const AListaID : TIntegerList);
var var
AStream: Binary; AStream: Binary;
AEditor : IEditorFacturasClientePreview; AEditor : IEditorFacturasClientePreview;
@ -98,7 +98,6 @@ begin
with AEditor do with AEditor do
begin begin
AEditor.Controller := Self; AEditor.Controller := Self;
AEditor.ListaID := AListaID;
LoadFromStream(AStream); LoadFromStream(AStream);
Preview; Preview;
Release; Release;
@ -112,7 +111,7 @@ begin
end; end;
end; end;
procedure TFacturasClienteReportController.Print(const AListaID : String); procedure TFacturasClienteReportController.Print(const AListaID : TIntegerList);
var var
AStream: Binary; AStream: Binary;
AEditor : IEditorFacturasClientePreview; AEditor : IEditorFacturasClientePreview;
@ -127,7 +126,6 @@ begin
with AEditor do with AEditor do
begin begin
AEditor.Controller := Self; AEditor.Controller := Self;
AEditor.ListaID := AListaID;
LoadFromStream(AStream); LoadFromStream(AStream);
Print; Print;
Release; Release;

View File

@ -10,7 +10,7 @@ uses
uIDataModuleFacturasCliente, uBizFacturasCliente, uBizDetallesFacturaCliente, uIDataModuleFacturasCliente, uBizFacturasCliente, uBizDetallesFacturaCliente,
uDADesigntimeCall, uIDataModuleFacturasClienteReport, uDataModuleBase, uDADesigntimeCall, uIDataModuleFacturasClienteReport, uDataModuleBase,
uDAInterfaces, uDAMemDataTable, uDADataStreamer, uDABin2DataStreamer, uDAInterfaces, uDAMemDataTable, uDADataStreamer, uDABin2DataStreamer,
uDARemoteDataAdapter; uDARemoteDataAdapter, uIntegerListUtils;
type type
TDataModuleFacturasCliente = class(TDataModuleBase, IDataModuleFacturasCliente, IDataModuleFacturasClienteReport) TDataModuleFacturasCliente = class(TDataModuleBase, IDataModuleFacturasCliente, IDataModuleFacturasClienteReport)
@ -30,8 +30,9 @@ type
function NewItem : IBizFacturaCliente; function NewItem : IBizFacturaCliente;
// Report // Report
function GetRptFacturas(const AListaID: String): Binary; function GetRptFacturas(const AListaID: TIntegerList): Binary;
function GetRptWordFactura(const AID: Integer): Binary; function GetRptWordFactura(const AID: Integer): Binary;
function GetRptPDFFactura(const AID: Integer): Binary;
end; end;
implementation implementation
@ -51,15 +52,36 @@ begin
end; end;
function TDataModuleFacturasCliente.GetRptFacturas( function TDataModuleFacturasCliente.GetRptFacturas(
const AListaID: String): Binary; const AListaID: TIntegerList): Binary;
var
AParam : TIntegerArray;
begin begin
Result := (RORemoteService as IsrvFacturasCliente).GenerateReport(AListaID) AParam := AListaID.ToIntegerArray;
try
Result := (RORemoteService as IsrvFacturasCliente).GenerarInforme(AParam);
finally
FreeANDNIL(AParam);
end;
end;
function TDataModuleFacturasCliente.GetRptPDFFactura(
const AID: Integer): Binary;
var
AParam : TIntegerArray;
begin
AParam := TIntegerArray.Create;
try
AParam.Add(AID);
Result := (RORemoteService as IsrvFacturasCliente).GenerarInformeEnPDF(AParam);
finally
FreeANDNIL(AParam);
end;
end; end;
function TDataModuleFacturasCliente.GetRptWordFactura( function TDataModuleFacturasCliente.GetRptWordFactura(
const AID: Integer): Binary; const AID: Integer): Binary;
begin begin
Result := (RORemoteService as IsrvFacturasCliente).GenerateReportEnWord(AID) Result := (RORemoteService as IsrvFacturasCliente).GenerarInformeEnWord(AID)
end; end;
function TDataModuleFacturasCliente.NewItem: IBizFacturaCliente; function TDataModuleFacturasCliente.NewItem: IBizFacturaCliente;

View File

@ -3,13 +3,14 @@ unit uIDataModuleFacturasClienteReport;
interface interface
uses uses
SysUtils, Classes, uROTypes; SysUtils, Classes, uROTypes, uIntegerListUtils;
type type
IDataModuleFacturasClienteReport = interface IDataModuleFacturasClienteReport = interface
['{D241A912-78C6-4C65-AEBF-8DDEFE35F511}'] ['{D241A912-78C6-4C65-AEBF-8DDEFE35F511}']
function GetRptFacturas(const AListaID: String): Binary; function GetRptFacturas(const AListaID: TIntegerList): Binary;
function GetRptWordFactura(const AID: Integer): Binary; function GetRptWordFactura(const AID: Integer): Binary;
function GetRptPDFFactura(const AID: Integer): Binary;
end; end;
implementation implementation

View File

@ -1465,4 +1465,18 @@ object RptFacturasCliente: TRptFacturasCliente
Left = 216 Left = 216
Top = 408 Top = 408
end end
object frxPDFExport1: TfrxPDFExport
ShowDialog = False
UseFileCache = True
ShowProgress = False
PrintOptimized = True
Outline = False
Author = 'FactuGES'
Subject = 'FactuGES'
Background = False
Creator = 'FactuGES'
HTMLTags = True
Left = 424
Top = 288
end
end end

View File

@ -8,7 +8,7 @@ uses
uDADataTable, uDACDSDataTable, DB, uDAClasses, frxChart, frxGradient, uDADataTable, uDACDSDataTable, DB, uDAClasses, frxChart, frxGradient,
frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDABINAdapter, uROTypes, frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDABINAdapter, uROTypes,
uDAInterfaces, uDADataStreamer, IBCustomDataSet, IBQuery, IBDatabase, uDAInterfaces, uDADataStreamer, IBCustomDataSet, IBQuery, IBDatabase,
uDAMemDataTable; uDAMemDataTable, FactuGES_Intf, frxExportPDF;
type type
TRptFacturasCliente = class(TDataModule) TRptFacturasCliente = class(TDataModule)
@ -80,13 +80,15 @@ type
vencimientosFECHA_VENCIMIENTO: TDateField; vencimientosFECHA_VENCIMIENTO: TDateField;
vencimientosIMPORTE_TOTAL: TIBBCDField; vencimientosIMPORTE_TOTAL: TIBBCDField;
schReport: TDASchema; schReport: TDASchema;
frxPDFExport1: TfrxPDFExport;
procedure DataModuleCreate(Sender: TObject); procedure DataModuleCreate(Sender: TObject);
private private
FConnection: IDAConnection; FConnection: IDAConnection;
//Genera cada una de las facturas a imprimir //Genera cada una de las facturas a imprimir
procedure GenerarFactura(const ID: integer); overload; procedure _GenerarFactura(const ID: Integer);
public public
function GenerarFactura(const AFacturaID : String): Binary; overload; function GenerarFactura(const ListaID : TIntegerArray): Binary;
function GenerarFacturaEnPDF(const ListaID : TIntegerArray): Binary;
end; end;
implementation implementation
@ -115,31 +117,45 @@ begin
frxReport.EngineOptions.NewSilentMode := simReThrow; frxReport.EngineOptions.NewSilentMode := simReThrow;
end; end;
function TRptFacturasCliente.GenerarFactura(const AFacturaID: String): Binary; function TRptFacturasCliente.GenerarFactura(const ListaID: TIntegerArray): Binary;
var var
ID_Facturas: TStringList;
i: Integer; i: Integer;
begin begin
Result := Binary.Create; Result := Binary.Create;
//FConnection.BeginTransaction; <--- Creo que no va a hacer falta. //FConnection.BeginTransaction; <--- Creo que no va a hacer falta.
try try
ID_Facturas := TStringList.Create;
ID_Facturas.CommaText := AFacturaID;
//Vamos generando todos y cada una de las facturas recibidas //Vamos generando todos y cada una de las facturas recibidas
for i := 0 to ID_Facturas.Count - 1 do for i := 0 to ListaID.Count - 1 do
GenerarFactura(StrToInt(ID_Facturas.Strings[i])); _GenerarFactura(ListaID.Items[i]);
frxReport.PreviewPages.SaveToStream(Result); frxReport.PreviewPages.SaveToStream(Result);
finally finally
//FConnection.RollbackTransaction; <--- Creo que no va a hacer falta. //FConnection.RollbackTransaction; <--- Creo que no va a hacer falta.
end; end;
end; end;
procedure TRptFacturasCliente.GenerarFactura(const ID: integer); function TRptFacturasCliente.GenerarFacturaEnPDF(
const ListaID: TIntegerArray): Binary;
var
i: Integer;
begin
Result := Binary.Create;
//FConnection.BeginTransaction; <--- Creo que no va a hacer falta.
try
//Vamos generando todos y cada una de las facturas recibidas
for i := 0 to ListaID.Count - 1 do
_GenerarFactura(ListaID.Items[i]);
frxPDFExport1.Stream := Result;
frxReport.Export(frxPDFExport1)
finally
//FConnection.RollbackTransaction; <--- Creo que no va a hacer falta.
end;
end;
procedure TRptFacturasCliente._GenerarFactura(const ID: Integer);
//var //var
// AStream: TMemoryStream; // AStream: TMemoryStream;
// dsMaster: IDADataset; // dsMaster: IDADataset;

View File

@ -35,8 +35,9 @@ type
private private
protected protected
{ IsrvFacturasCliente methods } { IsrvFacturasCliente methods }
function GenerateReport(const FacturaID: String): Binary; function GenerarInforme(const ListaID: TIntegerArray): Binary;
function GenerateReportEnWord(const ID: Integer): Binary; function GenerarInformeEnWord(const ID: Integer): Binary;
function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
end; end;
implementation implementation
@ -83,19 +84,32 @@ begin
ConnectionName := dmServer.ConnectionName; ConnectionName := dmServer.ConnectionName;
end; end;
function TsrvFacturasCliente.GenerateReport(const FacturaID: String): Binary; function TsrvFacturasCliente.GenerarInformeEnPDF(
const ListaID: TIntegerArray): Binary;
var var
AReportGenerator : TRptFacturasCliente; AReportGenerator : TRptFacturasCliente;
begin begin
AReportGenerator := TRptFacturasCliente.Create(nil); AReportGenerator := TRptFacturasCliente.Create(nil);
try try
Result := AReportGenerator.GenerarFactura(FacturaID); Result := AReportGenerator.GenerarFacturaEnPDF(ListaID);
finally finally
FreeAndNIL(AReportGenerator); FreeAndNIL(AReportGenerator);
end; end;
end; end;
function TsrvFacturasCliente.GenerateReportEnWord(const ID: Integer): Binary; function TsrvFacturasCliente.GenerarInforme(const ListaID: TIntegerArray): Binary;
var
AReportGenerator : TRptFacturasCliente;
begin
AReportGenerator := TRptFacturasCliente.Create(nil);
try
Result := AReportGenerator.GenerarFactura(ListaID);
finally
FreeAndNIL(AReportGenerator);
end;
end;
function TsrvFacturasCliente.GenerarInformeEnWord(const ID: Integer): Binary;
var var
AReportGenerator : TRptWordFacturaCliente; AReportGenerator : TRptWordFacturaCliente;
AFicheroTMP : TFileName; AFicheroTMP : TFileName;

View File

@ -48,13 +48,13 @@
<DelphiCompile Include="FacturasCliente_view.dpk"> <DelphiCompile Include="FacturasCliente_view.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\..\Lib\AlbCli_FacCli_relation.dcp" /> <DCCReference Include="..\AlbCli_FacCli_relation.dcp" />
<DCCReference Include="..\..\Lib\Articulos_view.dcp" /> <DCCReference Include="..\Articulos_view.dcp" />
<DCCReference Include="..\..\Lib\Contactos_view.dcp" /> <DCCReference Include="..\Contactos_view.dcp" />
<DCCReference Include="..\..\Lib\FacturasCliente_controller.dcp" /> <DCCReference Include="..\FacturasCliente_controller.dcp" />
<DCCReference Include="..\..\Lib\FacturasCliente_model.dcp" /> <DCCReference Include="..\FacturasCliente_model.dcp" />
<DCCReference Include="..\..\Lib\GUIBase.dcp" /> <DCCReference Include="..\GUIBase.dcp" />
<DCCReference Include="..\..\Lib\PreCli_FacCli_relation.dcp" /> <DCCReference Include="..\PreCli_FacCli_relation.dcp" />
<DCCReference Include="uEditorElegirArticulosFacturaCliente.pas"> <DCCReference Include="uEditorElegirArticulosFacturaCliente.pas">
<Form>fEditorElegirArticulosFacturaCliente</Form> <Form>fEditorElegirArticulosFacturaCliente</Form>
<DesignClass>TForm</DesignClass> <DesignClass>TForm</DesignClass>

View File

@ -1,8 +1,24 @@
inherited fEditorFacturasClientePreview: TfEditorFacturasClientePreview inherited fEditorFacturasClientePreview: TfEditorFacturasClientePreview
Caption = 'Previsualizar la factura' Caption = 'Previsualizar la factura'
ClientWidth = 622
ExplicitWidth = 630
ExplicitHeight = 492
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader
Width = 622
ExplicitWidth = 622
inherited Image1: TImage
Left = 595
ExplicitLeft = 595
end
end
inherited TBXDock: TTBXDock inherited TBXDock: TTBXDock
Width = 622
ExplicitWidth = 622
inherited tbxMenu: TTBXToolbar
ExplicitWidth = 622
end
inherited TBXToolbar1: TTBXToolbar inherited TBXToolbar1: TTBXToolbar
ExplicitWidth = 540 ExplicitWidth = 540
object TBXItem58: TTBXItem [1] object TBXItem58: TTBXItem [1]
@ -11,4 +27,8 @@ inherited fEditorFacturasClientePreview: TfEditorFacturasClientePreview
end end
end end
end end
inherited StatusBar: TJvStatusBar
Width = 622
ExplicitWidth = 622
end
end end

View File

@ -32,25 +32,18 @@ implementation
{$R *.dfm} {$R *.dfm}
uses uses
uFacturasClienteReportController; uFacturasClienteReportController, uIntegerListUtils;
procedure TfEditorFacturasClientePreview.actExportarRTFExecute(Sender: TObject); procedure TfEditorFacturasClientePreview.actExportarRTFExecute(Sender: TObject);
var var
AListaID : TStringList;
I: Integer; I: Integer;
begin begin
// inherited; <- No llamar al padre // inherited; <- No llamar al padre
if not Assigned(Controller) then if not Assigned(Controller) then
raise Exception.Create('No se ha asignado el controlador necesario'); raise Exception.Create('No se ha asignado el controlador necesario');
AListaID := TStringList.Create; for I := 0 to ListaID.Count - 1 do
try (Controller as IFacturasClienteReportController).ExportToWord(ListaID[I]);
AListaID.CommaText := Self.ListaID;
for I := 0 to AListaID.Count - 1 do
(Controller as IFacturasClienteReportController).ExportToWord(StrToInt(AListaID[I]));
finally
FreeAndNIL(AListaID);
end;
end; end;
end. end.

View File

@ -9,7 +9,7 @@ uses
uBizAlbaranesProveedor; uBizAlbaranesProveedor;
type type
IFacturasProveedorController = interface(IObservador) IFacturasProveedorController = interface(IControllerBase)
['{3868267C-E61A-4B79-AF61-648B2D627F56}'] ['{3868267C-E61A-4B79-AF61-648B2D627F56}']
function GetProveedorController: IProveedoresController; function GetProveedorController: IProveedoresController;
procedure SetProveedorController(const Value: IProveedoresController); procedure SetProveedorController(const Value: IProveedoresController);
@ -49,7 +49,7 @@ type
function ExtraerSeleccionados(ARecibosProveedor: IBizFacturaProveedor) : IBizFacturaProveedor; function ExtraerSeleccionados(ARecibosProveedor: IBizFacturaProveedor) : IBizFacturaProveedor;
end; end;
TFacturasProveedorController = class(TObservador, IFacturasProveedorController) TFacturasProveedorController = class(TControllerBase, IFacturasProveedorController)
private private
FDataModule : IDataModuleFacturasProveedor; FDataModule : IDataModuleFacturasProveedor;
FProveedorController : IProveedoresController; FProveedorController : IProveedoresController;

View File

@ -33,9 +33,6 @@ type
procedure DARemoteServiceCreate(Sender: TObject); procedure DARemoteServiceCreate(Sender: TObject);
procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject;
var aConnectionName: string); var aConnectionName: string);
protected
{ IsrvFacturasProveedor methods }
function GenerateReport(const FacturaID: String): Binary;
end; end;
implementation implementation
@ -80,20 +77,6 @@ begin
ConnectionName := dmServer.ConnectionName; ConnectionName := dmServer.ConnectionName;
end; end;
function TsrvFacturasProveedor.GenerateReport(const FacturaID: String): Binary;
//var
// AReportGenerator : TRptFacturasProveedor;
begin
{ AReportGenerator := TRptFacturasProveedor.Create(nil);
try
Result := AReportGenerator.GenerarFactura(FacturaID);
finally
FreeAndNIL(AReportGenerator);
end;
}
end;
initialization initialization
TROClassFactory.Create('srvFacturasProveedor', Create_srvFacturasProveedor, TsrvFacturasProveedor_Invoker); TROClassFactory.Create('srvFacturasProveedor', Create_srvFacturasProveedor, TsrvFacturasProveedor_Invoker);

View File

@ -9,7 +9,7 @@ uses
uDetallesPedidoProveedorController, uBizPedidosProveedor; uDetallesPedidoProveedorController, uBizPedidosProveedor;
type type
IPedidosProveedorController = interface(IObservador) IPedidosProveedorController = interface(IControllerBase)
['{404FFA2F-D683-447D-91E6-C9A7322934D8}'] ['{404FFA2F-D683-447D-91E6-C9A7322934D8}']
function GetProveedorController: IProveedoresController; function GetProveedorController: IProveedoresController;
procedure SetProveedorController(const Value: IProveedoresController); procedure SetProveedorController(const Value: IProveedoresController);
@ -51,7 +51,7 @@ type
end; end;
TPedidosProveedorController = class(TObservador, IPedidosProveedorController) TPedidosProveedorController = class(TControllerBase, IPedidosProveedorController)
protected protected
FDataModule : IDataModulePedidosProveedor; FDataModule : IDataModulePedidosProveedor;
FProveedorController : IProveedoresController; FProveedorController : IProveedoresController;
@ -121,8 +121,8 @@ uses
uBizDetallesPedidoProveedor, uBizContactos, uDataTableUtils, uDataModuleUsuarios, uBizDetallesPedidoProveedor, uBizContactos, uDataTableUtils, uDataModuleUsuarios,
schPedidosProveedorClient_Intf, uDAInterfaces, uPedidosProveedorReportController, schPedidosProveedorClient_Intf, uDAInterfaces, uPedidosProveedorReportController,
uDateUtils, uIEditorPedidoProveedor, uIEditorElegirPedidosProveedor, uDateUtils, uIEditorPedidoProveedor, uIEditorElegirPedidosProveedor,
Dialogs, uIEditorDireccionEntregaPedidoProveedor, Classes, Dialogs, uIEditorDireccionEntregaPedidoProveedor, Classes, uIEditorSituacionPedidoProveedor,
uIEditorSituacionPedidoProveedor, Variants; Variants, uIntegerListUtils;
{ TPedidosProveedorController } { TPedidosProveedorController }
@ -741,14 +741,13 @@ end;
procedure TPedidosProveedorController.Preview(APedido: IBizPedidoProveedor; AllItems: Boolean = false); procedure TPedidosProveedorController.Preview(APedido: IBizPedidoProveedor; AllItems: Boolean = false);
var var
AReportController : IPedidosProveedorReportController; AReportController : IPedidosProveedorReportController;
ID_Pedidos: TStringList; ID_Pedidos: TIntegerList;
begin begin
AReportController := TPedidosProveedorReportController.Create; AReportController := TPedidosProveedorReportController.Create;
ID_Pedidos := TStringList.Create; ID_Pedidos := TIntegerList.Create;
try try
//Si deseamos previsualizar todos los items del objeto albaran //Si deseamos previsualizar todos los items del objeto albaran
if AllItems then if AllItems then
begin begin
@ -757,31 +756,29 @@ begin
First; First;
while not EOF do while not EOF do
begin begin
ID_Pedidos.Add(IntToStr(APedido.ID)); ID_Pedidos.Add(APedido.ID);
Next; Next;
end; end;
end; end;
end end
//Solo previsualizamos el item seleccionado //Solo previsualizamos el item seleccionado
else else
ID_Pedidos.Add(IntToStr(APedido.ID)); ID_Pedidos.Add(APedido.ID);
AReportController.Preview(ID_Pedidos.CommaText);
AReportController.Preview(ID_Pedidos);
finally finally
AReportController := NIL; AReportController := NIL;
ID_Pedidos.Free; FreeANDNIL(ID_Pedidos)
end; end;
end; end;
procedure TPedidosProveedorController.Print(APedido: IBizPedidoProveedor; AllItems: Boolean = false); procedure TPedidosProveedorController.Print(APedido: IBizPedidoProveedor; AllItems: Boolean = false);
var var
AReportController : IPedidosProveedorReportController; AReportController : IPedidosProveedorReportController;
ID_Pedidos: TStringList; ID_Pedidos: TIntegerList;
begin begin
AReportController := TPedidosProveedorReportController.Create; AReportController := TPedidosProveedorReportController.Create;
ID_Pedidos := TStringList.Create; ID_Pedidos := TIntegerList.Create;
try try
//Si deseamos previsualizar todos los items del objeto albaran //Si deseamos previsualizar todos los items del objeto albaran
@ -792,20 +789,19 @@ begin
First; First;
while not EOF do while not EOF do
begin begin
ID_Pedidos.Add(IntToStr(APedido.ID)); ID_Pedidos.Add(APedido.ID);
Next; Next;
end; end;
end; end;
end end
//Solo previsualizamos el item seleccionado //Solo previsualizamos el item seleccionado
else else
ID_Pedidos.Add(IntToStr(APedido.ID)); ID_Pedidos.Add(APedido.ID);
AReportController.Print(ID_Pedidos.CommaText);
AReportController.Print(ID_Pedidos);
finally finally
AReportController := NIL; AReportController := NIL;
ID_Pedidos.Free; FreeANDNIL(ID_Pedidos)
end; end;
end; end;

View File

@ -5,13 +5,13 @@ interface
uses uses
Classes, SysUtils, uDADataTable, uControllerBase, uIDataModulePedidosProveedorReport, Classes, SysUtils, uDADataTable, uControllerBase, uIDataModulePedidosProveedorReport,
uClientesController, uPedidosProveedorController, uDetallesPedidoProveedorController, uClientesController, uPedidosProveedorController, uDetallesPedidoProveedorController,
uBizPedidosProveedor; uBizPedidosProveedor, uIntegerListUtils;
type type
IPedidosProveedorReportController = interface(IControllerBase) IPedidosProveedorReportController = interface(IControllerBase)
['{D0686358-251C-43C4-9927-6112F2F4D3B8}'] ['{D0686358-251C-43C4-9927-6112F2F4D3B8}']
procedure Preview(const AListaID : String); procedure Preview(const AListaID : TIntegerList);
procedure Print(const AListaID : String); procedure Print(const AListaID : TIntegerList);
function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean; function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean;
end; end;
@ -23,8 +23,8 @@ type
constructor Create; override; constructor Create; override;
destructor Destroy; override; destructor Destroy; override;
procedure Preview(const AListaID : String); procedure Preview(const AListaID : TIntegerList);
procedure Print(const AListaID : String); procedure Print(const AListaID : TIntegerList);
function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean; function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean;
end; end;
@ -82,7 +82,7 @@ begin
end; end;
end; end;
procedure TPedidosProveedorReportController.Preview(const AListaID : String); procedure TPedidosProveedorReportController.Preview(const AListaID : TIntegerList);
var var
AStream: Binary; AStream: Binary;
AEditor : IEditorPedidosProveedorPreview; AEditor : IEditorPedidosProveedorPreview;
@ -94,14 +94,16 @@ begin
try try
CreateEditor('EditorPedidosProveedorPreview', IEditorPedidosProveedorPreview, AEditor); CreateEditor('EditorPedidosProveedorPreview', IEditorPedidosProveedorPreview, AEditor);
if Assigned(AEditor) then if Assigned(AEditor) then
with AEditor do
begin begin
AEditor.Controller := Self; try
AEditor.ListaID := AListaID; AEditor.Controller := Self;
Title := 'Pedido a proveedor - ' + AppFactuGES.EmpresaActiva.NOMBRE; AEditor.ListaID := AListaID;
LoadFromStream(AStream); AEditor.Title := 'Pedido a proveedor - ' + AppFactuGES.EmpresaActiva.NOMBRE;
Preview; AEditor.LoadFromStream(AStream);
Release; AEditor.Preview;
finally
AEditor.Release;
end;
end; end;
finally finally
FreeAndNil(AStream); FreeAndNil(AStream);
@ -112,7 +114,7 @@ begin
end; end;
end; end;
procedure TPedidosProveedorReportController.Print(const AListaID : String); procedure TPedidosProveedorReportController.Print(const AListaID : TIntegerList);
var var
AStream: Binary; AStream: Binary;
AEditor : IEditorPedidosProveedorPreview; AEditor : IEditorPedidosProveedorPreview;
@ -124,11 +126,16 @@ begin
try try
CreateEditor('EditorPedidosProveedorPreview', IEditorPedidosProveedorPreview, AEditor); CreateEditor('EditorPedidosProveedorPreview', IEditorPedidosProveedorPreview, AEditor);
if Assigned(AEditor) then if Assigned(AEditor) then
with AEditor do
begin begin
LoadFromStream(AStream); try
Print; AEditor.Controller := Self;
Release; AEditor.ListaID := AListaID;
AEditor.Title := 'Pedido a proveedor - ' + AppFactuGES.EmpresaActiva.NOMBRE;
AEditor.LoadFromStream(AStream);
AEditor.Print;
finally
AEditor.Release;
end;
end; end;
finally finally
FreeAndNil(AStream); FreeAndNil(AStream);

View File

@ -10,7 +10,8 @@ uses
uROTypes, uDataModuleBase, uROTypes, uDataModuleBase,
uIDataModulePedidosProveedor, uIDataModulePedidosProveedorReport, uIDataModulePedidosProveedor, uIDataModulePedidosProveedorReport,
uBizPedidosProveedor, uBizDetallesPedidoProveedor, uDARemoteDataAdapter, uBizPedidosProveedor, uBizDetallesPedidoProveedor, uDARemoteDataAdapter,
uDADataStreamer, uDABin2DataStreamer, uDAInterfaces, uDAMemDataTable; uDADataStreamer, uDABin2DataStreamer, uDAInterfaces, uDAMemDataTable,
uIntegerListUtils;
type type
TDataModulePedidosProveedor = class(TDataModuleBase, IDataModulePedidosProveedor, TDataModulePedidosProveedor = class(TDataModuleBase, IDataModulePedidosProveedor,
@ -39,8 +40,10 @@ type
function GetArticulosPendientes(const IDPedido: Integer): IBizDetallesPedidoProveedorPend; function GetArticulosPendientes(const IDPedido: Integer): IBizDetallesPedidoProveedorPend;
// Report // Report
function GetReport(const AID: String): Binary; function GetReport(const ListaID: TIntegerList): Binary;
function GetRptWordPedido(const AID: Integer): Binary; function GetRptWordPedido(const AID: Integer): Binary;
function GetRptPDFPedido(const AID: Integer): Binary;
end; end;
implementation implementation
@ -64,15 +67,36 @@ begin
RORemoteService.Message := dmConexion.Message; RORemoteService.Message := dmConexion.Message;
end; end;
function TDataModulePedidosProveedor.GetReport(const AID: String): Binary; function TDataModulePedidosProveedor.GetReport(const ListaID: TIntegerList): Binary;
var
AParam : TIntegerArray;
begin begin
Result := (RORemoteService as IsrvPedidosProveedor).GenerateReport(AID) AParam := ListaID.ToIntegerArray;
try
Result := (RORemoteService as IsrvPedidosProveedor).GenerarInforme(AParam)
finally
FreeANDNil(AParam);
end;
end;
function TDataModulePedidosProveedor.GetRptPDFPedido(
const AID: Integer): Binary;
var
AParam : TIntegerArray;
begin
AParam := TIntegerArray.Create;
try
AParam.Add(AID);
Result := (RORemoteService as IsrvPedidosProveedor).GenerarInformeEnPDF(AParam)
finally
FreeANDNil(AParam);
end;
end; end;
function TDataModulePedidosProveedor.GetRptWordPedido( function TDataModulePedidosProveedor.GetRptWordPedido(
const AID: Integer): Binary; const AID: Integer): Binary;
begin begin
Result := (RORemoteService as IsrvPedidosProveedor).GenerateReportEnWord(AID) Result := (RORemoteService as IsrvPedidosProveedor).GenerarInformeEnWord(AID);
end; end;
function TDataModulePedidosProveedor.NewItem: IBizPedidoProveedor; function TDataModulePedidosProveedor.NewItem: IBizPedidoProveedor;

View File

@ -3,13 +3,14 @@ unit uIDataModulePedidosProveedorReport;
interface interface
uses uses
uROTypes; uROTypes, uIntegerListUtils;
type type
IDataModulePedidosProveedorReport = interface IDataModulePedidosProveedorReport = interface
['{F2FFF4EA-B43D-4AAB-8A76-35A322B61A80}'] ['{F2FFF4EA-B43D-4AAB-8A76-35A322B61A80}']
function GetReport(const AID: String): Binary; function GetReport(const ListaID: TIntegerList): Binary;
function GetRptWordPedido(const AID: Integer): Binary; function GetRptWordPedido(const AID: Integer): Binary;
function GetRptPDFPedido(const AID: Integer): Binary;
end; end;
implementation implementation

View File

@ -789,4 +789,18 @@ object RptPedidosProveedor: TRptPedidosProveedor
Left = 360 Left = 360
Top = 136 Top = 136
end end
object frxPDFExport1: TfrxPDFExport
ShowDialog = False
UseFileCache = True
ShowProgress = False
PrintOptimized = True
Outline = False
Author = 'FactuGES'
Subject = 'FactuGES'
Background = False
Creator = 'FactuGES'
HTMLTags = True
Left = 440
Top = 296
end
end end

View File

@ -8,7 +8,7 @@ uses
uDADataTable, uDACDSDataTable, DB, uDAClasses, frxChart, frxGradient, uDADataTable, uDACDSDataTable, DB, uDAClasses, frxChart, frxGradient,
frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDABINAdapter, uROTypes, frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDABINAdapter, uROTypes,
uDAInterfaces, uDADataStreamer, IBCustomDataSet, IBQuery, IBDatabase, uDAInterfaces, uDADataStreamer, IBCustomDataSet, IBQuery, IBDatabase,
uDAMemDataTable; uDAMemDataTable, frxExportPDF, FactuGES_Intf;
type type
TRptPedidosProveedor = class(TDataModule) TRptPedidosProveedor = class(TDataModule)
@ -61,12 +61,14 @@ type
cabeceraENTREGAR_A: TIBStringField; cabeceraENTREGAR_A: TIBStringField;
schReport: TDASchema; schReport: TDASchema;
DataDictionary: TDADataDictionary; DataDictionary: TDADataDictionary;
frxPDFExport1: TfrxPDFExport;
procedure DataModuleCreate(Sender: TObject); procedure DataModuleCreate(Sender: TObject);
private private
FConnection: IDAConnection; FConnection: IDAConnection;
procedure GenerarPedido(const ID : Integer); overload; procedure _GenerarPedido(const ID : Integer);
public public
function GenerarPedido(const AID : String): Binary; overload; function GenerarPedido(const ListaID : TIntegerArray): Binary;
function GenerarPedidoEnPDF(const ListaID: TIntegerArray): Binary;
end; end;
implementation implementation
@ -94,31 +96,24 @@ begin
frxReport.EngineOptions.NewSilentMode := simReThrow; frxReport.EngineOptions.NewSilentMode := simReThrow;
end; end;
function TRptPedidosProveedor.GenerarPedido(const AID: String): Binary; function TRptPedidosProveedor.GenerarPedido(const ListaID : TIntegerArray): Binary;
var var
ID_Pedidos: TStringList;
i: Integer; i: Integer;
begin begin
Result := Binary.Create; Result := Binary.Create;
//FConnection.BeginTransaction; <--- Creo que no va a hacer falta. //FConnection.BeginTransaction; <--- Creo que no va a hacer falta.
try try
ID_Pedidos := TStringList.Create;
ID_Pedidos.CommaText := AID;
//Vamos generando todos y cada uno de los albaranes recibidos //Vamos generando todos y cada uno de los albaranes recibidos
for i := 0 to ID_Pedidos.Count - 1 do for i := 0 to ListaID.Count - 1 do
GenerarPedido(StrToInt(ID_Pedidos.Strings[i])); _GenerarPedido(ListaID.Items[i]);
frxReport.PreviewPages.SaveToStream(Result); frxReport.PreviewPages.SaveToStream(Result);
finally finally
//FConnection.RollbackTransaction; <--- Creo que no va a hacer falta. //FConnection.RollbackTransaction; <--- Creo que no va a hacer falta.
end; end;
end; end;
procedure TRptPedidosProveedor.GenerarPedido(const ID: Integer); procedure TRptPedidosProveedor._GenerarPedido(const ID: Integer);
var var
AStream: TMemoryStream; AStream: TMemoryStream;
dsMaster: IDADataset; dsMaster: IDADataset;
@ -146,4 +141,25 @@ begin
end; end;
end; end;
function TRptPedidosProveedor.GenerarPedidoEnPDF(
const ListaID: TIntegerArray): Binary;
var
i: Integer;
begin
Result := Binary.Create;
//FConnection.BeginTransaction; <--- Creo que no va a hacer falta.
try
//Vamos generando todos y cada uno de los albaranes recibidos
for i := 0 to ListaID.Count - 1 do
_GenerarPedido(ListaID.Items[i]);
frxPDFExport1.Stream := Result;
frxReport.Export(frxPDFExport1)
finally
//FConnection.RollbackTransaction; <--- Creo que no va a hacer falta.
end;
end;
end. end.

View File

@ -31,10 +31,13 @@ type
procedure DARemoteServiceCreate(Sender: TObject); procedure DARemoteServiceCreate(Sender: TObject);
procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject;
var aConnectionName: string); var aConnectionName: string);
private
function GenerarInformeEnWord(const ID: Integer): Binary;
protected protected
{ IsrvPedidosProveedor methods } { IsrvPedidosProveedor methods }
function GenerateReport(const ID: String): Binary; function GenerarInforme(const ListaID: TIntegerArray): Binary;
function GenerateReportEnWord(const ID: Integer): Binary; function GenerateInformeEnWord(const ID: Integer): Binary;
function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
end; end;
implementation implementation
@ -82,20 +85,32 @@ begin
ConnectionName := dmServer.ConnectionName; ConnectionName := dmServer.ConnectionName;
end; end;
function TsrvPedidosProveedor.GenerateReport(const ID: String): Binary; function TsrvPedidosProveedor.GenerarInforme(const ListaID: TIntegerArray): Binary;
var var
AReportGenerator : TRptPedidosProveedor; AReportGenerator : TRptPedidosProveedor;
begin begin
AReportGenerator := TRptPedidosProveedor.Create(nil); AReportGenerator := TRptPedidosProveedor.Create(nil);
try try
Result := AReportGenerator.GenerarPedido(ID); Result := AReportGenerator.GenerarPedido(ListaID);
finally finally
FreeAndNIL(AReportGenerator); FreeAndNIL(AReportGenerator);
end; end;
end; end;
function TsrvPedidosProveedor.GenerateReportEnWord(const ID: Integer): Binary; function TsrvPedidosProveedor.GenerarInformeEnPDF(
const ListaID: TIntegerArray): Binary;
var
AReportGenerator : TRptPedidosProveedor;
begin
AReportGenerator := TRptPedidosProveedor.Create(nil);
try
Result := AReportGenerator.GenerarPedidoEnPDF(ListaID);
finally
FreeAndNIL(AReportGenerator);
end;
end;
function TsrvPedidosProveedor.GenerarInformeEnWord(const ID: Integer): Binary;
var var
AReportGenerator : TRptWordPedidoProveedor; AReportGenerator : TRptWordPedidoProveedor;
AFicheroTMP : TFileName; AFicheroTMP : TFileName;
@ -114,6 +129,11 @@ begin
end; end;
end; end;
function TsrvPedidosProveedor.GenerateInformeEnWord(const ID: Integer): Binary;
begin
end;
initialization initialization
TROClassFactory.Create('srvPedidosProveedor', Create_srvPedidosProveedor, TsrvPedidosProveedor_Invoker); TROClassFactory.Create('srvPedidosProveedor', Create_srvPedidosProveedor, TsrvPedidosProveedor_Invoker);

View File

@ -1,5 +1,7 @@
inherited fEditorPedidosProveedorPreview: TfEditorPedidosProveedorPreview inherited fEditorPedidosProveedorPreview: TfEditorPedidosProveedorPreview
Caption = 'Previsualizar el pedidos proveedor' Caption = 'Previsualizar el pedidos proveedor'
ExplicitWidth = 320
ExplicitHeight = 240
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
inherited TBXDock: TTBXDock inherited TBXDock: TTBXDock

View File

@ -33,21 +33,14 @@ uses
procedure TfEditorPedidosProveedorPreview.actExportarRTFExecute( procedure TfEditorPedidosProveedorPreview.actExportarRTFExecute(
Sender: TObject); Sender: TObject);
var var
AListaID : TStringList;
I: Integer; I: Integer;
begin begin
// inherited; <- No llamar al padre // inherited; <- No llamar al padre
if not Assigned(Controller) then if not Assigned(Controller) then
raise Exception.Create('No se ha asignado el controlador necesario'); raise Exception.Create('No se ha asignado el controlador necesario');
AListaID := TStringList.Create; for I := 0 to ListaID.Count - 1 do
try (Controller as IPedidosProveedorReportController).ExportToWord(ListaID[I]);
AListaID.CommaText := Self.ListaID;
for I := 0 to AListaID.Count - 1 do
(Controller as IPedidosProveedorReportController).ExportToWord(StrToInt(AListaID[I]));
finally
FreeAndNIL(AListaID);
end;
end; end;
end. end.

View File

@ -10,7 +10,7 @@ uses
uBizDetallesPresupuestoCliente; uBizDetallesPresupuestoCliente;
type type
IPresupuestosClienteController = interface(IObservador) IPresupuestosClienteController = interface(IControllerBase)
['{21ED0332-F0E0-468D-8D53-8CA362757191}'] ['{21ED0332-F0E0-468D-8D53-8CA362757191}']
function GetClienteController: IClientesController; function GetClienteController: IClientesController;
procedure SetClienteController(const Value: IClientesController); procedure SetClienteController(const Value: IClientesController);
@ -56,7 +56,7 @@ type
function CambiarSituacion(APresupuesto : IBizPresupuestoCliente; Situacion: String; FechaDecision: TDateTime; AllItems: Boolean = false): Boolean; function CambiarSituacion(APresupuesto : IBizPresupuestoCliente; Situacion: String; FechaDecision: TDateTime; AllItems: Boolean = false): Boolean;
end; end;
TPresupuestosClienteController = class(TObservador, IPresupuestosClienteController) TPresupuestosClienteController = class(TControllerBase, IPresupuestosClienteController)
protected protected
FDataModule : IDataModulePresupuestosCliente; FDataModule : IDataModulePresupuestosCliente;
FClienteController : IClientesController; FClienteController : IClientesController;
@ -129,7 +129,7 @@ uses
schPresupuestosClienteClient_Intf, uDAInterfaces, uDateUtils, uIEditorPresupuestoCliente, schPresupuestosClienteClient_Intf, uDAInterfaces, uDateUtils, uIEditorPresupuestoCliente,
uIEditorElegirPresupuestosCliente, uIEditorDireccionEntregaPresupuestoCliente, uIEditorElegirPresupuestosCliente, uIEditorDireccionEntregaPresupuestoCliente,
schContactosClient_Intf, uPresupuestosClienteReportController, schContactosClient_Intf, uPresupuestosClienteReportController,
uSistemaFunc, uEMailUtils, uDialogElegirEMail; uSistemaFunc, uEMailUtils, uDialogElegirEMail, uIntegerListUtils;
{ TPresupuestosClienteController } { TPresupuestosClienteController }
@ -205,13 +205,10 @@ begin
end; end;
end; end;
function TPresupuestosClienteController.CambiarSituacion(APresupuesto: IBizPresupuestoCliente; Situacion: String; FechaDecision: TDateTime; function TPresupuestosClienteController.CambiarSituacion(APresupuesto: IBizPresupuestoCliente;
AllItems: Boolean): Boolean; Situacion: String; FechaDecision: TDateTime; AllItems: Boolean): Boolean;
//En el caso de cambiar almenos un elemento del conjunto se devuelve true // En el caso de cambiar almenos un elemento del conjunto se devuelve true
begin begin
Result := False;
if not Assigned(APresupuesto) then if not Assigned(APresupuesto) then
raise Exception.Create ('APresupuesto no asignado'); raise Exception.Create ('APresupuesto no asignado');
@ -864,12 +861,11 @@ end;
procedure TPresupuestosClienteController.Preview(APresupuesto: IBizPresupuestoCliente; AllItems: Boolean = false); procedure TPresupuestosClienteController.Preview(APresupuesto: IBizPresupuestoCliente; AllItems: Boolean = false);
var var
AReportController : IPresupuestosClienteReportController; AReportController : IPresupuestosClienteReportController;
ID_Presupuestos: TStringList; ID_Presupuestos: TIntegerList;
begin begin
AReportController := TPresupuestosClienteReportController.Create; AReportController := TPresupuestosClienteReportController.Create;
try try
ID_Presupuestos := TStringList.Create; ID_Presupuestos := TIntegerList.Create;
//Si deseamos previsualizar todos los items del objeto presupuesto //Si deseamos previsualizar todos los items del objeto presupuesto
if AllItems then if AllItems then
@ -879,17 +875,16 @@ begin
First; First;
while not EOF do while not EOF do
begin begin
ID_Presupuestos.Add(IntToStr(APresupuesto.ID)); ID_Presupuestos.Add(APresupuesto.ID);
Next; Next;
end; end;
end; end;
end end
//Solo previsualizamos el item seleccionado //Solo previsualizamos el item seleccionado
else else
ID_Presupuestos.Add(IntToStr(APresupuesto.ID)); ID_Presupuestos.Add(APresupuesto.ID);
AReportController.Preview(ID_Presupuestos.CommaText);
AReportController.Preview(ID_Presupuestos);
finally finally
AReportController := NIL; AReportController := NIL;
FreeAndNil(ID_Presupuestos); FreeAndNil(ID_Presupuestos);
@ -899,10 +894,10 @@ end;
procedure TPresupuestosClienteController.Print(APresupuesto: IBizPresupuestoCliente; AllItems: Boolean = false); procedure TPresupuestosClienteController.Print(APresupuesto: IBizPresupuestoCliente; AllItems: Boolean = false);
var var
AReportController : IPresupuestosClienteReportController; AReportController : IPresupuestosClienteReportController;
ID_Presupuestos: TStringList; ID_Presupuestos: TIntegerList;
begin begin
AReportController := TPresupuestosClienteReportController.Create; AReportController := TPresupuestosClienteReportController.Create;
ID_Presupuestos := TStringList.Create; ID_Presupuestos := TIntegerList.Create;
try try
//Si deseamos imprimimos todos los items del objeto presupuesto //Si deseamos imprimimos todos los items del objeto presupuesto
if AllItems then if AllItems then
@ -912,16 +907,16 @@ begin
First; First;
while not EOF do while not EOF do
begin begin
ID_Presupuestos.Add(IntToStr(APresupuesto.ID)); ID_Presupuestos.Add(APresupuesto.ID);
Next; Next;
end; end;
end; end;
end end
//Solo imprimimos el item seleccionado //Solo imprimimos el item seleccionado
else else
ID_Presupuestos.Add(IntToStr(APresupuesto.ID)); ID_Presupuestos.Add(APresupuesto.ID);
AReportController.Print(ID_Presupuestos.CommaText); AReportController.Print(ID_Presupuestos);
finally finally
AReportController := NIL; AReportController := NIL;
@ -934,7 +929,6 @@ function TPresupuestosClienteController.GenerarCertificados(
var var
AReportController : IPresupuestosClienteReportController; AReportController : IPresupuestosClienteReportController;
ID_Presupuestos: TStringList; ID_Presupuestos: TStringList;
AFile : String;
ATitulo : String; ATitulo : String;
AComentario : String; AComentario : String;
ARuta : String; ARuta : String;

View File

@ -5,13 +5,13 @@ interface
uses uses
Classes, SysUtils, uDADataTable, uControllerBase, uIDataModulePresupuestosClienteReport, Classes, SysUtils, uDADataTable, uControllerBase, uIDataModulePresupuestosClienteReport,
uClientesController, uPresupuestosClienteController, uDetallesPresupuestoClienteController, uClientesController, uPresupuestosClienteController, uDetallesPresupuestoClienteController,
uBizPresupuestosCliente; uBizPresupuestosCliente, uIntegerListUtils;
type type
IPresupuestosClienteReportController = interface(IControllerBase) IPresupuestosClienteReportController = interface(IControllerBase)
['{41AE4B36-6114-4DDE-8BCF-288AA0E12449}'] ['{41AE4B36-6114-4DDE-8BCF-288AA0E12449}']
procedure Preview(const AListaID : String); procedure Preview(const AListaID : TIntegerList);
procedure Print(const AListaID : String); procedure Print(const AListaID : TIntegerList);
function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean; function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean;
function ExportToPDF(const AID: Integer; const AFileName : String = ''): Boolean; function ExportToPDF(const AID: Integer; const AFileName : String = ''): Boolean;
function GenerarCertificados(const AID: Integer; const AFileName : String): Boolean; function GenerarCertificados(const AID: Integer; const AFileName : String): Boolean;
@ -25,8 +25,8 @@ type
constructor Create; override; constructor Create; override;
destructor Destroy; override; destructor Destroy; override;
procedure Preview(const AListaID : String); procedure Preview(const AListaID : TIntegerList);
procedure Print(const AListaID : String); procedure Print(const AListaID : TIntegerList);
function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean; function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean;
function ExportToPDF(const AID: Integer; const AFileName : String = ''): Boolean; function ExportToPDF(const AID: Integer; const AFileName : String = ''): Boolean;
function GenerarCertificados(const AID: Integer; const AFileName : String): Boolean; function GenerarCertificados(const AID: Integer; const AFileName : String): Boolean;
@ -64,17 +64,14 @@ function TPresupuestosClienteReportController.ExportToPDF(const AID: Integer;
const AFileName: String): Boolean; const AFileName: String): Boolean;
var var
AStream: Binary; AStream: Binary;
ID_Presupuestos: TStringList;
begin begin
Result := False; Result := False;
if EsCadenaVacia(AFileName) then if EsCadenaVacia(AFileName) then
Exit; Exit;
ID_Presupuestos := TStringList.Create;
ShowHourglassCursor; ShowHourglassCursor;
try try
ID_Presupuestos.Add(IntToStr(AID)); AStream := FDataModule.GetRptPDFPresupuesto(AID);
AStream := FDataModule.GetRptPDFPresupuesto(ID_Presupuestos.CommaText);
try try
AStream.SaveToFile(AFileName); AStream.SaveToFile(AFileName);
Result := True; Result := True;
@ -135,7 +132,7 @@ begin
end; end;
end; end;
procedure TPresupuestosClienteReportController.Preview(const AListaID : String); procedure TPresupuestosClienteReportController.Preview(const AListaID : TIntegerList);
var var
AStream: Binary; AStream: Binary;
AEditor : IEditorPresupuestosClientePreview; AEditor : IEditorPresupuestosClientePreview;
@ -147,15 +144,17 @@ begin
try try
CreateEditor('EditorPresupuestosClientePreview', IEditorPresupuestosClientePreview, AEditor); CreateEditor('EditorPresupuestosClientePreview', IEditorPresupuestosClientePreview, AEditor);
if Assigned(AEditor) then if Assigned(AEditor) then
with AEditor do begin
begin try
AEditor.Controller := Self; AEditor.Controller := Self;
AEditor.ListaID := AListaID; AEditor.ListaID := AListaID;
Title := 'Presupuesto - ' + AppFactuGES.EmpresaActiva.NOMBRE; AEditor.Title := 'Presupuesto - ' + AppFactuGES.EmpresaActiva.NOMBRE;
LoadFromStream(AStream); AEditor.LoadFromStream(AStream);
Preview; AEditor.Preview;
Release; finally
AEditor.Release;
end; end;
end;
finally finally
FreeAndNil(AStream); FreeAndNil(AStream);
AEditor := Nil; AEditor := Nil;
@ -165,7 +164,7 @@ begin
end; end;
end; end;
procedure TPresupuestosClienteReportController.Print(const AListaID : String); procedure TPresupuestosClienteReportController.Print(const AListaID : TIntegerList);
var var
AStream: Binary; AStream: Binary;
AEditor : IEditorPresupuestosClientePreview; AEditor : IEditorPresupuestosClientePreview;
@ -177,14 +176,17 @@ begin
try try
CreateEditor('EditorPresupuestosClientePreview', IEditorPresupuestosClientePreview, AEditor); CreateEditor('EditorPresupuestosClientePreview', IEditorPresupuestosClientePreview, AEditor);
if Assigned(AEditor) then if Assigned(AEditor) then
with AEditor do begin
begin try
AEditor.Controller := Self; AEditor.Controller := Self;
AEditor.ListaID := AListaID; AEditor.ListaID := AListaID;
AEditor.Title := 'Presupuesto - ' + AppFactuGES.EmpresaActiva.NOMBRE;
AEditor.LoadFromStream(AStream); AEditor.LoadFromStream(AStream);
AEditor.Print; AEditor.Print;
finally
AEditor.Release; AEditor.Release;
end; end;
end;
finally finally
FreeAndNil(AStream); FreeAndNil(AStream);
AEditor := Nil; AEditor := Nil;

View File

@ -11,7 +11,7 @@ uses
uIDataModulePresupuestosCliente, uBizPresupuestosCliente, uBizDetallesPresupuestoCliente, uIDataModulePresupuestosCliente, uBizPresupuestosCliente, uBizDetallesPresupuestoCliente,
uIDataModulePresupuestosClienteReport, uDataModuleBase, uDAInterfaces, uIDataModulePresupuestosClienteReport, uDataModuleBase, uDAInterfaces,
uRODynamicRequest, uDADataStreamer, uDARemoteDataAdapter, uDABin2DataStreamer, uRODynamicRequest, uDADataStreamer, uDARemoteDataAdapter, uDABin2DataStreamer,
uDAMemDataTable; uDAMemDataTable, uIntegerListUtils;
type type
TDataModulePresupuestosCliente = class(TDataModuleBase, IDataModulePresupuestosCliente, IDataModulePresupuestosClienteReport) TDataModulePresupuestosCliente = class(TDataModuleBase, IDataModulePresupuestosCliente, IDataModulePresupuestosClienteReport)
@ -36,10 +36,10 @@ type
function NewItem : IBizPresupuestoCliente; function NewItem : IBizPresupuestoCliente;
// Report // Report
function GetRptPresupuestos(const AListaID: String): Binary; function GetRptPresupuestos(const AListaID: TIntegerList): Binary;
function GetRptWordPresupuesto(const AID: Integer): Binary; function GetRptWordPresupuesto(const AID: Integer): Binary;
function GetRptWordCertificadoTrabajos(const AID: Integer): Binary; function GetRptWordCertificadoTrabajos(const AID: Integer): Binary;
function GetRptPDFPresupuesto(const AListaID: String): Binary; function GetRptPDFPresupuesto(const AID: Integer): Binary;
end; end;
implementation implementation
@ -64,14 +64,29 @@ begin
end; end;
function TDataModulePresupuestosCliente.GetRptPDFPresupuesto( function TDataModulePresupuestosCliente.GetRptPDFPresupuesto(
const AListaID: String): Binary; const AID: Integer): Binary;
var
AParam : TIntegerArray;
begin begin
Result := (RORemoteService as IsrvPresupuestosCliente).GenerarInformeEnPDF(AListaID) AParam := TIntegerArray.Create;
try
AParam.Add(AID);
Result := (RORemoteService as IsrvPresupuestosCliente).GenerarInformeEnPDF(AParam)
finally
FreeANDNIL(AParam)
end;
end; end;
function TDataModulePresupuestosCliente.GetRptPresupuestos(const AListaID: String): Binary; function TDataModulePresupuestosCliente.GetRptPresupuestos(const AListaID: TIntegerList): Binary;
var
AParam : TIntegerArray;
begin begin
Result := (RORemoteService as IsrvPresupuestosCliente).GenerarInforme(AListaID) AParam := AListaID.ToIntegerArray;
try
Result := (RORemoteService as IsrvPresupuestosCliente).GenerarInforme(AParam)
finally
FreeANDNIL(AParam)
end;
end; end;
function TDataModulePresupuestosCliente.GetRptWordCertificadoTrabajos( function TDataModulePresupuestosCliente.GetRptWordCertificadoTrabajos(

View File

@ -3,15 +3,15 @@ unit uIDataModulePresupuestosClienteReport;
interface interface
uses uses
uROTypes; uROTypes, uIntegerListUtils;
type type
IDataModulePresupuestosClienteReport = interface IDataModulePresupuestosClienteReport = interface
['{70CEBB06-376F-4363-B80F-DDA4324E0F85}'] ['{70CEBB06-376F-4363-B80F-DDA4324E0F85}']
function GetRptPresupuestos(const AListaID: String): Binary; function GetRptPresupuestos(const AListaID: TIntegerList): Binary;
function GetRptWordPresupuesto(const AID: Integer): Binary; function GetRptWordPresupuesto(const AID: Integer): Binary;
function GetRptWordCertificadoTrabajos(const AID: Integer): Binary; function GetRptWordCertificadoTrabajos(const AID: Integer): Binary;
function GetRptPDFPresupuesto(const AListaID: String): Binary; function GetRptPDFPresupuesto(const AID: Integer): Binary;
end; end;
implementation implementation

View File

@ -8,7 +8,7 @@ uses
uDADataTable, uDACDSDataTable, DB, uDAClasses, uDABINAdapter, uROTypes, uDADataTable, uDACDSDataTable, DB, uDAClasses, uDABINAdapter, uROTypes,
uDAInterfaces, uDAMemDataTable, uDADataStreamer, uDABin2DataStreamer, uDAInterfaces, uDAMemDataTable, uDADataStreamer, uDABin2DataStreamer,
frxGradient, frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDAEngine, frxGradient, frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDAEngine,
IBSQL, IBDatabase, IBCustomDataSet, IBQuery, frxExportPDF; IBSQL, IBDatabase, IBCustomDataSet, IBQuery, frxExportPDF, FactuGES_Intf;
type type
TRptPresupuestosCliente = class(TDataModule) TRptPresupuestosCliente = class(TDataModule)
@ -83,8 +83,8 @@ type
FConnection: IDAConnection; FConnection: IDAConnection;
procedure _GenerarPresupuesto(const AID : Integer); procedure _GenerarPresupuesto(const AID : Integer);
public public
function GenerarPresupuesto(const ListaID : String): Binary; overload; function GenerarPresupuesto(const ListaID : TIntegerArray): Binary;
function GenerarPDF(const ListaID : String): Binary; overload; function GenerarPresupuestoEnPDF(const ListaID : TIntegerArray): Binary;
end; end;
implementation implementation
@ -108,22 +108,17 @@ begin
frxReport.EngineOptions.NewSilentMode := simReThrow; frxReport.EngineOptions.NewSilentMode := simReThrow;
end; end;
function TRptPresupuestosCliente.GenerarPDF(const ListaID: String): Binary; function TRptPresupuestosCliente.GenerarPresupuestoEnPDF(const ListaID: TIntegerArray): Binary;
var var
ID_Presupuestos: TStringList;
i: Integer; i: Integer;
begin begin
Result := Binary.Create; Result := Binary.Create;
//FConnection.BeginTransaction; <--- Creo que no va a hacer falta. //FConnection.BeginTransaction; <--- Creo que no va a hacer falta.
try try
ID_Presupuestos := TStringList.Create;
ID_Presupuestos.CommaText := ListaID;
//Vamos generando todos y cada uno de los presupuestos recibidos //Vamos generando todos y cada uno de los presupuestos recibidos
for i := 0 to ID_Presupuestos.Count - 1 do for i := 0 to ListaID.Count - 1 do
_GenerarPresupuesto(StrToInt(ID_Presupuestos.Strings[i])); _GenerarPresupuesto(ListaID.Items[i]);
frxPDFExport1.Stream := Result; frxPDFExport1.Stream := Result;
frxReport.Export(frxPDFExport1) frxReport.Export(frxPDFExport1)
@ -132,22 +127,17 @@ begin
end; end;
end; end;
function TRptPresupuestosCliente.GenerarPresupuesto(const ListaID: String): Binary; function TRptPresupuestosCliente.GenerarPresupuesto(const ListaID: TIntegerArray): Binary;
var var
ID_Presupuestos: TStringList;
i: Integer; i: Integer;
begin begin
Result := Binary.Create; Result := Binary.Create;
//FConnection.BeginTransaction; <--- Creo que no va a hacer falta. //FConnection.BeginTransaction; <--- Creo que no va a hacer falta.
try try
ID_Presupuestos := TStringList.Create;
ID_Presupuestos.CommaText := ListaID;
//Vamos generando todos y cada uno de los presupuestos recibidos //Vamos generando todos y cada uno de los presupuestos recibidos
for i := 0 to ID_Presupuestos.Count - 1 do for i := 0 to ListaID.Count - 1 do
_GenerarPresupuesto(StrToInt(ID_Presupuestos.Strings[i])); _GenerarPresupuesto(ListaID.Items[i]);
frxReport.PreviewPages.SaveToStream(Result); frxReport.PreviewPages.SaveToStream(Result);
finally finally

View File

@ -91,10 +91,7 @@ end;
function TRptWordPresupuestoCliente.Exportar(Codigo, Fichero: String): Boolean; function TRptWordPresupuestoCliente.Exportar(Codigo, Fichero: String): Boolean;
begin begin
if EsCadenaVacia(Fichero) then if EsCadenaVacia(Fichero) then
begin
Result := False;
RaiseError('Falta indicar el fichero donde se exportará el listado.'); RaiseError('Falta indicar el fichero donde se exportará el listado.');
end;
FNombreFichero := Fichero; FNombreFichero := Fichero;
FCodigoPresupuesto := Codigo; FCodigoPresupuesto := Codigo;
@ -148,6 +145,7 @@ var
iContador : Integer; iContador : Integer;
TotalConceptos : Double; TotalConceptos : Double;
begin begin
TotalConceptos := 0;
numRows := 2; numRows := 2;
numCols := 1; numCols := 1;
mergeSplit := False; mergeSplit := False;
@ -194,14 +192,15 @@ end;
function TRptWordPresupuestoCliente.RellenarCabecera: boolean; function TRptWordPresupuestoCliente.RellenarCabecera: boolean;
var var
NombreFichero, NombreFichero,
Texto, Texto : String;
FicheroTemporal : String; { FicheroTemporal : String;
LinkToFile, SaveWithDocument, _Range : OleVariant; LinkToFile, SaveWithDocument, _Range : OleVariant;
Imagen : InlineShape; Imagen : InlineShape;
What, Which, Count, Name : OleVariant; ovRange : OleVariant;
Which, Name : OleVariant;}
What, Count : OleVariant;
ovBookMarkName : OleVariant; ovBookMarkName : OleVariant;
TempRange : Word2000.Range; TempRange : Word2000.Range;
ovRange : OleVariant;
begin begin
//PARA DIBUJAR EL LOGOTIPO MULTIEMPRESA //PARA DIBUJAR EL LOGOTIPO MULTIEMPRESA
@ -364,11 +363,10 @@ end;
function TRptWordPresupuestoCliente.RellenarPortada: boolean; function TRptWordPresupuestoCliente.RellenarPortada: boolean;
var var
NombreFichero, NombreFichero,
Texto, Texto : String;
FicheroTemporal : string; {FicheroTemporal : string;
LinkToFile, SaveWithDocument, _Range : OleVariant; LinkToFile, SaveWithDocument, _Range : OleVariant;
Imagen : InlineShape; Imagen : InlineShape;}
begin begin
//PARA DIBUJAR EL LOGOTIPO MULTIEMPRESA //PARA DIBUJAR EL LOGOTIPO MULTIEMPRESA
@ -418,6 +416,7 @@ var
Tabla : Table; Tabla : Table;
Estilo : OleVariant; Estilo : OleVariant;
begin begin
TotalConceptos := 0;
numRows := 2; numRows := 2;
numCols := 1; numCols := 1;
mergeSplit := False; mergeSplit := False;

View File

@ -33,9 +33,9 @@ type
procedure DARemoteServiceCreate(Sender: TObject); procedure DARemoteServiceCreate(Sender: TObject);
protected protected
{ IsrvPresupuestosCliente methods } { IsrvPresupuestosCliente methods }
function GenerarInforme(const ListaID: String): Binary; function GenerarInforme(const ListaID: TIntegerArray): Binary;
function GenerarInformeEnWord(const ID: Integer): Binary; function GenerarInformeEnWord(const ID: Integer): Binary;
function GenerarInformeEnPDF(const ListaID: String): Binary; function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
function GenerarCertificadoTrabajosEnWord(const ID: Integer): Binary; function GenerarCertificadoTrabajosEnWord(const ID: Integer): Binary;
end; end;
@ -101,7 +101,7 @@ begin
end; end;
end; end;
function TsrvPresupuestosCliente.GenerarInforme(const ListaID: String): Binary; function TsrvPresupuestosCliente.GenerarInforme(const ListaID: TIntegerArray): Binary;
var var
AReportGenerator : TRptPresupuestosCliente; AReportGenerator : TRptPresupuestosCliente;
begin begin
@ -114,13 +114,13 @@ begin
end; end;
function TsrvPresupuestosCliente.GenerarInformeEnPDF( function TsrvPresupuestosCliente.GenerarInformeEnPDF(
const ListaID: String): Binary; const ListaID: TIntegerArray): Binary;
var var
AReportGenerator : TRptPresupuestosCliente; AReportGenerator : TRptPresupuestosCliente;
begin begin
AReportGenerator := TRptPresupuestosCliente.Create(nil); AReportGenerator := TRptPresupuestosCliente.Create(nil);
try try
Result := AReportGenerator.GenerarPDF(ListaID); Result := AReportGenerator.GenerarPresupuestoEnPDF(ListaID);
finally finally
FreeAndNIL(AReportGenerator); FreeAndNIL(AReportGenerator);
end; end;

View File

@ -1,5 +1,7 @@
inherited fEditorPresupuestosClientePreview: TfEditorPresupuestosClientePreview inherited fEditorPresupuestosClientePreview: TfEditorPresupuestosClientePreview
Caption = 'Previsualizar el pedidos proveedor' Caption = 'Previsualizar el pedidos proveedor'
ExplicitWidth = 320
ExplicitHeight = 240
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader

View File

@ -24,26 +24,19 @@ implementation
{$R *.dfm} {$R *.dfm}
uses uses
uPresupuestosClienteReportController; uPresupuestosClienteReportController, uIntegerListUtils;
procedure TfEditorPresupuestosClientePreview.actExportarRTFExecute( procedure TfEditorPresupuestosClientePreview.actExportarRTFExecute(
Sender: TObject); Sender: TObject);
var var
AListaID : TStringList;
I: Integer; I: Integer;
begin begin
// inherited; <- No llamar al padre // inherited; <- No llamar al padre
if not Assigned(Controller) then if not Assigned(Controller) then
raise Exception.Create('No se ha asignado el controlador necesario'); raise Exception.Create('No se ha asignado el controlador necesario');
AListaID := TStringList.Create; for I := 0 to ListaID.Count - 1 do
try (Controller as IPresupuestosClienteReportController).ExportToWord(ListaID[I]);
AListaID.CommaText := Self.ListaID;
for I := 0 to AListaID.Count - 1 do
(Controller as IPresupuestosClienteReportController).ExportToWord(StrToInt(AListaID[I]));
finally
FreeAndNIL(AListaID);
end;
end; end;
end. end.

View File

@ -31,7 +31,7 @@ uses
uBizRecibosCliente, uIDataModuleRecibosCliente; uBizRecibosCliente, uIDataModuleRecibosCliente;
type type
IRecibosClienteController = interface(IObservador) IRecibosClienteController = interface(IControllerBase)
['{CBC8BDB8-FBE0-4D54-B2F1-A9330E8339EB}'] ['{CBC8BDB8-FBE0-4D54-B2F1-A9330E8339EB}']
function GetPagosController: IPagosClienteController; function GetPagosController: IPagosClienteController;
@ -78,7 +78,7 @@ type
procedure Print(ARecibosCliente : IBizRecibosCliente; AllItems: Boolean = false); procedure Print(ARecibosCliente : IBizRecibosCliente; AllItems: Boolean = false);
end; end;
TRecibosClienteController = class(TObservador, IRecibosClienteController) TRecibosClienteController = class(TControllerBase, IRecibosClienteController)
private private
function ImporteTotalModificado(ARecibosCliente: IBizRecibosCliente; function ImporteTotalModificado(ARecibosCliente: IBizRecibosCliente;
var ImporteRestante: Currency): Boolean; var ImporteRestante: Currency): Boolean;
@ -147,7 +147,7 @@ uses
Forms, uNumUtils, cxControls, DB, uEditorRegistryUtils, Dialogs, Forms, uNumUtils, cxControls, DB, uEditorRegistryUtils, Dialogs,
uDAInterfaces, uDataTableUtils, uDataModuleUsuarios, uFactuGES_App, uDAInterfaces, uDataTableUtils, uDataModuleUsuarios, uFactuGES_App,
uDateUtils, uROTypes, DateUtils, Controls, Windows, Variants, uDateUtils, uROTypes, DateUtils, Controls, Windows, Variants,
uRecibosClienteReportController, uBizContactos, uDADelta, uRecibosClienteReportController, uBizContactos, uDADelta, uIntegerListUtils,
schRecibosClienteClient_Intf, uIEditorRecibosCliente, uIEditorReciboCliente, schRecibosClienteClient_Intf, uIEditorRecibosCliente, uIEditorReciboCliente,
uIEditorElegirRecibosCliente, uDataModuleRecibosCliente, uIEditorFechaPago; uIEditorElegirRecibosCliente, uDataModuleRecibosCliente, uIEditorFechaPago;
@ -829,14 +829,13 @@ end;
procedure TRecibosClienteController.Preview(ARecibosCliente: IBizRecibosCliente; AllItems: Boolean = false); procedure TRecibosClienteController.Preview(ARecibosCliente: IBizRecibosCliente; AllItems: Boolean = false);
var var
AReportController : IRecibosClienteReportController; AReportController : IRecibosClienteReportController;
ID_Recibos: TStringList; ID_Recibos: TIntegerList;
begin begin
AReportController := TRecibosClienteReportController.Create; AReportController := TRecibosClienteReportController.Create;
ID_Recibos := TStringList.Create; ID_Recibos := TIntegerList.Create;
try try
//Si deseamos previsualizar todos los items del objeto albaran //Si deseamos previsualizar todos los items del objeto albaran
if AllItems then if AllItems then
begin begin
@ -845,34 +844,32 @@ begin
First; First;
while not EOF do while not EOF do
begin begin
ID_Recibos.Add(IntToStr(ARecibosCliente.ID)); ID_Recibos.Add(ARecibosCliente.ID);
Next; Next;
end; end;
end; end;
end end
//Solo previsualizamos el item seleccionado //Solo previsualizamos el item seleccionado
else else
ID_Recibos.Add(IntToStr(ARecibosCliente.ID)); ID_Recibos.Add(ARecibosCliente.ID);
AReportController.Preview(ID_Recibos.CommaText);
AReportController.Preview(ID_Recibos);
finally finally
AReportController := NIL; AReportController := NIL;
ID_Recibos.Free; FreeANDNil(ID_Recibos);
end; end;
end; end;
procedure TRecibosClienteController.Print(ARecibosCliente: IBizRecibosCliente; AllItems: Boolean = false); procedure TRecibosClienteController.Print(ARecibosCliente: IBizRecibosCliente; AllItems: Boolean = false);
var var
AReportController : IRecibosClienteReportController; AReportController : IRecibosClienteReportController;
ID_Recibos: TStringList; ID_Recibos: TIntegerList;
begin begin
AReportController := TRecibosClienteReportController.Create; AReportController := TRecibosClienteReportController.Create;
ID_Recibos := TStringList.Create; ID_Recibos := TIntegerList.Create;
try try
//Si deseamos previsualizar todos los items del objeto albaran //Si deseamos previsualizar todos los items del objeto albaran
if AllItems then if AllItems then
begin begin
@ -881,22 +878,20 @@ begin
First; First;
while not EOF do while not EOF do
begin begin
ID_Recibos.Add(IntToStr(ARecibosCliente.ID)); ID_Recibos.Add(ARecibosCliente.ID);
Next; Next;
end; end;
end; end;
end end
//Solo previsualizamos el item seleccionado //Solo previsualizamos el item seleccionado
else else
ID_Recibos.Add(IntToStr(ARecibosCliente.ID)); ID_Recibos.Add(ARecibosCliente.ID);
AReportController.Print(ID_Recibos.CommaText);
AReportController.Print(ID_Recibos);
finally finally
AReportController := NIL; AReportController := NIL;
ID_Recibos.Free; FreeANDNil(ID_Recibos);
end; end;
end; end;
end. end.

View File

@ -4,16 +4,16 @@ interface
uses uses
Classes, SysUtils, uDADataTable, uControllerBase, uIDataModuleRecibosClienteReport, Classes, SysUtils, uDADataTable, uControllerBase, uIDataModuleRecibosClienteReport,
uBizRecibosCliente; uBizRecibosCliente, uIntegerListUtils;
type type
IRecibosClienteReportController = interface IRecibosClienteReportController = interface(IControllerBase)
['{3837DFA3-0A38-4BB2-B0DB-D0615249EA49}'] ['{3837DFA3-0A38-4BB2-B0DB-D0615249EA49}']
procedure Preview(const ID : String); procedure Preview(const ListaID : TIntegerList);
procedure Print(const ID : String); procedure Print(const ListaID : TIntegerList);
end; end;
TRecibosClienteReportController = class(TInterfacedObject, IRecibosClienteReportController) TRecibosClienteReportController = class(TControllerBase, IRecibosClienteReportController)
private private
FDataModule : IDataModuleRecibosClienteReport; FDataModule : IDataModuleRecibosClienteReport;
function CreateEditor(const AName: String; const IID: TGUID; out Intf): Boolean; function CreateEditor(const AName: String; const IID: TGUID; out Intf): Boolean;
@ -21,8 +21,8 @@ type
constructor Create; constructor Create;
destructor Destroy; override; destructor Destroy; override;
procedure Preview(const ID : String); procedure Preview(const ListaID : TIntegerList);
procedure Print(const ID : String); procedure Print(const ListaID : TIntegerList);
end; end;
@ -52,7 +52,7 @@ begin
inherited; inherited;
end; end;
procedure TRecibosClienteReportController.Preview(const ID : String); procedure TRecibosClienteReportController.Preview(const ListaID : TIntegerList);
var var
AStream: Binary; AStream: Binary;
AEditor : IEditorRecibosClientePreview; AEditor : IEditorRecibosClientePreview;
@ -60,15 +60,19 @@ begin
AEditor := NIL; AEditor := NIL;
ShowHourglassCursor; ShowHourglassCursor;
try try
AStream := FDataModule.GetReport(ID); AStream := FDataModule.GetReport(ListaID);
try try
CreateEditor('EditorRecibosClientePreview', IEditorRecibosClientePreview, AEditor); CreateEditor('EditorRecibosClientePreview', IEditorRecibosClientePreview, AEditor);
if Assigned(AEditor) then if Assigned(AEditor) then
with AEditor do
begin begin
AEditor.LoadFromStream(AStream); try
AEditor.Preview; AEditor.Controller := Self;
AEditor.Release; AEditor.ListaID := ListaID;
AEditor.LoadFromStream(AStream);
AEditor.Preview;
finally
AEditor.Release;
end;
end; end;
finally finally
FreeAndNil(AStream); FreeAndNil(AStream);
@ -79,7 +83,7 @@ begin
end; end;
end; end;
procedure TRecibosClienteReportController.Print(const ID : String); procedure TRecibosClienteReportController.Print(const ListaID : TIntegerList);
var var
AStream: Binary; AStream: Binary;
AEditor : IEditorRecibosClientePreview; AEditor : IEditorRecibosClientePreview;
@ -87,15 +91,19 @@ begin
AEditor := NIL; AEditor := NIL;
ShowHourglassCursor; ShowHourglassCursor;
try try
AStream := FDataModule.GetReport(ID); AStream := FDataModule.GetReport(ListaID);
try try
CreateEditor('EditorRecibosClientePreview', IEditorRecibosClientePreview, AEditor); CreateEditor('EditorRecibosClientePreview', IEditorRecibosClientePreview, AEditor);
if Assigned(AEditor) then if Assigned(AEditor) then
with AEditor do
begin begin
AEditor.LoadFromStream(AStream); try
AEditor.Print; AEditor.Controller := Self;
AEditor.Release; AEditor.ListaID := ListaID;
AEditor.LoadFromStream(AStream);
AEditor.Print;
finally
AEditor.Release;
end;
end; end;
finally finally
FreeAndNil(AStream); FreeAndNil(AStream);

View File

@ -33,7 +33,8 @@ uses
uIDataModuleRecibosCliente, uIDataModuleRecibosClienteReport, uIDataModuleRecibosCliente, uIDataModuleRecibosClienteReport,
uBizRecibosCliente, uBizPagosCliente, uBizRecibosCliCompensados, uDAInterfaces, uBizRecibosCliente, uBizPagosCliente, uBizRecibosCliCompensados, uDAInterfaces,
uDAMemDataTable, uDADataStreamer, uDABin2DataStreamer, uDARemoteDataAdapter; uDAMemDataTable, uDADataStreamer, uDABin2DataStreamer, uDARemoteDataAdapter,
uIntegerListUtils;
type type
TDataModuleRecibosCliente = class(TDataModuleBase, IDataModuleRecibosCliente, IDataModuleRecibosClienteReport) TDataModuleRecibosCliente = class(TDataModuleBase, IDataModuleRecibosCliente, IDataModuleRecibosClienteReport)
@ -54,7 +55,7 @@ type
function GetItems: IBizRecibosCliente; function GetItems: IBizRecibosCliente;
function GetItem(const ID : Integer) : IBizRecibosCliente; function GetItem(const ID : Integer) : IBizRecibosCliente;
function NewItem : IBizRecibosCliente; function NewItem : IBizRecibosCliente;
function GetReport(const ID: String): Binary; function GetReport(const ListaID: TIntegerList): Binary;
end; end;
implementation implementation
@ -68,9 +69,16 @@ uses
{ TDataModuleRecibosCliente } { TDataModuleRecibosCliente }
function TDataModuleRecibosCliente.GetReport(const ID: String): Binary; function TDataModuleRecibosCliente.GetReport(const ListaID: TIntegerList): Binary;
var
AParam : TIntegerArray;
begin begin
Result := (RORemoteService as IsrvRecibosCliente).GenerateReport(ID); AParam := ListaID.ToIntegerArray;
try
Result := (RORemoteService as IsrvRecibosCliente).GenerarInforme(AParam);
finally
FreeANDNIL(AParam);
end;
end; end;
procedure TDataModuleRecibosCliente.DAClientDataModuleCreate(Sender: TObject); procedure TDataModuleRecibosCliente.DAClientDataModuleCreate(Sender: TObject);

View File

@ -3,12 +3,12 @@ unit uIDataModuleRecibosClienteReport;
interface interface
uses uses
SysUtils, Classes, uROTypes; SysUtils, Classes, uROTypes, uIntegerListUtils;
type type
IDataModuleRecibosClienteReport = interface IDataModuleRecibosClienteReport = interface
['{FBADD967-0008-4ED5-9CCD-5BFE4F527D52}'] ['{FBADD967-0008-4ED5-9CCD-5BFE4F527D52}']
function GetReport(const ID: String): Binary; function GetReport(const ListaID: TIntegerList): Binary;
end; end;
implementation implementation

View File

@ -7,7 +7,7 @@ uses
Dialogs, frxClass, frxDBSet, uDAScriptingProvider, Dialogs, frxClass, frxDBSet, uDAScriptingProvider,
uDADataTable, uDAMemDataTable, DB, uDAClasses, frxChart, frxGradient, uDADataTable, uDAMemDataTable, DB, uDAClasses, frxChart, frxGradient,
frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDABINAdapter, uROTypes, frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDABINAdapter, uROTypes,
uDAInterfaces, uDADataStreamer; uDAInterfaces, uDADataStreamer, FactuGES_Intf;
type type
TRptRecibosCliente = class(TDataModule) TRptRecibosCliente = class(TDataModule)
@ -31,9 +31,9 @@ type
procedure DataModuleCreate(Sender: TObject); procedure DataModuleCreate(Sender: TObject);
private private
FConnection: IDAConnection; FConnection: IDAConnection;
procedure GenerarRecibo(const ID : Integer); overload; procedure _GenerarRecibo(const ID : Integer);
public public
function GenerarRecibo(const ID : String): Binary; overload; function GenerarRecibo(const ListaID : TIntegerArray): Binary;
end; end;
implementation implementation
@ -60,31 +60,24 @@ begin
frxReport.EngineOptions.NewSilentMode := simReThrow; frxReport.EngineOptions.NewSilentMode := simReThrow;
end; end;
function TRptRecibosCliente.GenerarRecibo(const ID: String): Binary; function TRptRecibosCliente.GenerarRecibo(const ListaID: TIntegerArray): Binary;
var var
ID_Recibos: TStringList;
i: Integer; i: Integer;
begin begin
Result := Binary.Create; Result := Binary.Create;
//FConnection.BeginTransaction; <--- Creo que no va a hacer falta. //FConnection.BeginTransaction; <--- Creo que no va a hacer falta.
try try
ID_Recibos := TStringList.Create;
ID_Recibos.CommaText := ID;
//Vamos generando todos y cada uno de los albaranes recibidos //Vamos generando todos y cada uno de los albaranes recibidos
for i := 0 to ID_Recibos.Count - 1 do for i := 0 to ListaID.Count - 1 do
GenerarRecibo(StrToInt(ID_Recibos.Strings[i])); _GenerarRecibo(ListaID.Items[i]);
frxReport.PreviewPages.SaveToStream(Result); frxReport.PreviewPages.SaveToStream(Result);
finally finally
//FConnection.RollbackTransaction; <--- Creo que no va a hacer falta. //FConnection.RollbackTransaction; <--- Creo que no va a hacer falta.
end; end;
end; end;
procedure TRptRecibosCliente.GenerarRecibo(const ID: Integer); procedure TRptRecibosCliente._GenerarRecibo(const ID: Integer);
var var
dsMaster: IDADataset; dsMaster: IDADataset;
dsCompensados : IDADataset; dsCompensados : IDADataset;

View File

@ -33,7 +33,7 @@ type
private private
protected protected
{ IsrvRecibosProveedor methods } { IsrvRecibosProveedor methods }
function GenerateReport(const ID: String): Binary; function GenerarInforme(const ListaID: TIntegerArray): Binary;
end; end;
implementation implementation
@ -76,13 +76,13 @@ begin
ConnectionName := dmServer.ConnectionName; ConnectionName := dmServer.ConnectionName;
end; end;
function TsrvRecibosCliente.GenerateReport(const ID: String): Binary; function TsrvRecibosCliente.GenerarInforme(const ListaID: TIntegerArray): Binary;
var var
AReportGenerator : TRptRecibosCliente; AReportGenerator : TRptRecibosCliente;
begin begin
AReportGenerator := TRptRecibosCliente.Create(nil); AReportGenerator := TRptRecibosCliente.Create(nil);
try try
Result := AReportGenerator.GenerarRecibo(ID); Result := AReportGenerator.GenerarRecibo(ListaID);
finally finally
FreeAndNIL(AReportGenerator); FreeAndNIL(AReportGenerator);
end; end;

View File

@ -31,7 +31,7 @@ uses
uBizRecibosProveedor, uIDataModuleRecibosProveedor; uBizRecibosProveedor, uIDataModuleRecibosProveedor;
type type
IRecibosProveedorController = interface(IObservador) IRecibosProveedorController = interface(IControllerBase)
['{763DF610-3540-42BE-A09A-35AABFAF2DA1}'] ['{763DF610-3540-42BE-A09A-35AABFAF2DA1}']
function GetPagosController: IPagosProveedorController; function GetPagosController: IPagosProveedorController;
@ -73,7 +73,7 @@ type
procedure Print(ARecibosProveedor : IBizRecibosProveedor); procedure Print(ARecibosProveedor : IBizRecibosProveedor);
end; end;
TRecibosProveedorController = class(TObservador, IRecibosProveedorController) TRecibosProveedorController = class(TControllerBase, IRecibosProveedorController)
private private
function ImporteTotalModificado(ARecibosProveedor: IBizRecibosProveedor; function ImporteTotalModificado(ARecibosProveedor: IBizRecibosProveedor;
var ImporteRestante: Currency): Boolean; var ImporteRestante: Currency): Boolean;

View File

@ -31,9 +31,6 @@ type
const IncludeSchema: Boolean; const MaxRecords: Integer); const IncludeSchema: Boolean; const MaxRecords: Integer);
procedure DARemoteServiceCreate(Sender: TObject); procedure DARemoteServiceCreate(Sender: TObject);
procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; var aConnectionName: string); procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; var aConnectionName: string);
protected
{ IsrvRecibosProveedor methods }
function GenerateReport(const ID: Integer): Binary;
end; end;
implementation implementation
@ -78,19 +75,6 @@ begin
ConnectionName := dmServer.ConnectionName; ConnectionName := dmServer.ConnectionName;
end; end;
function TsrvRecibosProveedor.GenerateReport(const ID: Integer): Binary;
//var
// AReportGenerator : TRptRecibosProveedor;
begin
// AReportGenerator := TRptRecibosProveedor.Create(nil);
// try
// Result := AReportGenerator.GenerarRecibo(ID);
// finally
// FreeAndNIL(AReportGenerator);
// end;
Result := NIL;
end;
initialization initialization
TROClassFactory.Create('srvRecibosProveedor', Create_srvRecibosProveedor, TsrvRecibosProveedor_Invoker); TROClassFactory.Create('srvRecibosProveedor', Create_srvRecibosProveedor, TsrvRecibosProveedor_Invoker);

View File

@ -9,7 +9,7 @@ uses
uBizContactos, uRecibosClienteController; uBizContactos, uRecibosClienteController;
type type
IRemesasClienteController = interface(IObservador) IRemesasClienteController = interface(IControllerBase)
['{F5D925C6-255C-4374-9A71-DFC0FBB7FA96}'] ['{F5D925C6-255C-4374-9A71-DFC0FBB7FA96}']
function Buscar(const ID: Integer): IBizRemesaCliente; function Buscar(const ID: Integer): IBizRemesaCliente;
function BuscarTodos: IBizRemesaCliente; overload; function BuscarTodos: IBizRemesaCliente; overload;
@ -37,7 +37,7 @@ type
function ExtraerSeleccionados(ARemesasCliente: IBizRemesaCliente) : IBizRemesaCliente; function ExtraerSeleccionados(ARemesasCliente: IBizRemesaCliente) : IBizRemesaCliente;
end; end;
TRemesasClienteController = class(TObservador, IRemesasClienteController) TRemesasClienteController = class(TControllerBase, IRemesasClienteController)
protected protected
FDataModule : IDataModuleRemesasCliente; FDataModule : IDataModuleRemesasCliente;
FRecibosClienteController: IRecibosClienteController; FRecibosClienteController: IRecibosClienteController;

View File

@ -31,9 +31,6 @@ type
const IncludeSchema: Boolean; const MaxRecords: Integer); const IncludeSchema: Boolean; const MaxRecords: Integer);
procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject;
var aConnectionName: string); var aConnectionName: string);
protected
{ IsrvRemesasCliente methods }
function GenerateReport(const ID: String): Binary;
end; end;
implementation implementation
@ -80,19 +77,6 @@ begin
ConnectionName := dmServer.ConnectionName; ConnectionName := dmServer.ConnectionName;
end; end;
function TsrvRemesasCliente.GenerateReport(const ID: String): Binary;
//var
// AReportGenerator : TRptRemesasCliente;
begin
{ AReportGenerator := TRptRemesasCliente.Create(nil);
try
Result := AReportGenerator.GenerarRemesa(ID);
finally
FreeAndNIL(AReportGenerator);
end;
}
end;
initialization initialization
TROClassFactory.Create('srvRemesasCliente', Create_srvRemesasCliente, TsrvRemesasCliente_Invoker); TROClassFactory.Create('srvRemesasCliente', Create_srvRemesasCliente, TsrvRemesasCliente_Invoker);

View File

@ -9,7 +9,7 @@ uses
uBizContactos, uRecibosProveedorController; uBizContactos, uRecibosProveedorController;
type type
IRemesasProveedorController = interface(IObservador) IRemesasProveedorController = interface(IControllerBase)
['{C14143FE-0806-4E64-93E2-A2C0170BBD41}'] ['{C14143FE-0806-4E64-93E2-A2C0170BBD41}']
function Buscar(const ID: Integer): IBizRemesaProveedor; function Buscar(const ID: Integer): IBizRemesaProveedor;
function BuscarTodos: IBizRemesaProveedor; overload; function BuscarTodos: IBizRemesaProveedor; overload;
@ -37,7 +37,7 @@ type
function ExtraerSeleccionados(ARemesasProveedor: IBizRemesaProveedor) : IBizRemesaProveedor; function ExtraerSeleccionados(ARemesasProveedor: IBizRemesaProveedor) : IBizRemesaProveedor;
end; end;
TRemesasProveedorController = class(TObservador, IRemesasProveedorController) TRemesasProveedorController = class(TControllerBase, IRemesasProveedorController)
protected protected
FDataModule : IDataModuleRemesasProveedor; FDataModule : IDataModuleRemesasProveedor;
FRecibosProveedorController: IRecibosProveedorController; FRecibosProveedorController: IRecibosProveedorController;

View File

@ -31,11 +31,6 @@ type
const IncludeSchema: Boolean; const MaxRecords: Integer); const IncludeSchema: Boolean; const MaxRecords: Integer);
procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject;
var aConnectionName: string); var aConnectionName: string);
private
protected
{ IsrvRemesasProveedor methods }
function GetNextAutoInc(const GeneratorName: String): Integer;
function GenerateReport(const ID: String): Binary;
end; end;
implementation implementation
@ -81,25 +76,6 @@ begin
ConnectionName := dmServer.ConnectionName; ConnectionName := dmServer.ConnectionName;
end; end;
function TsrvRemesasProveedor.GenerateReport(const ID: String): Binary;
//var
// AReportGenerator : TRptRemesasProveedor;
begin
{
AReportGenerator := TRptRemesasProveedor.Create(nil);
try
Result := AReportGenerator.GenerarRemesa(ID);
finally
FreeAndNIL(AReportGenerator);
end;
}
end;
function TsrvRemesasProveedor.GetNextAutoInc(const GeneratorName: String): Integer;
begin
Result := uDatabaseUtils.GetNextAutoInc(GeneratorName)
end;
initialization initialization
TROClassFactory.Create('srvRemesasProveedor', Create_srvRemesasProveedor, TsrvRemesasProveedor_Invoker); TROClassFactory.Create('srvRemesasProveedor', Create_srvRemesasProveedor, TsrvRemesasProveedor_Invoker);

View File

@ -9,19 +9,19 @@
<Interfaces> <Interfaces>
<Interface Name="Default" UID="{28CCDC07-A3A4-4917-89B4-64423DC70C9D}"> <Interface Name="Default" UID="{28CCDC07-A3A4-4917-89B4-64423DC70C9D}">
<Operations> <Operations>
<Operation Name="GenerateFichaEmpleadoReport" UID="{CCD0007A-F1FF-46C2-8BB8-09981EAE4FB7}"> <Operation Name="GenerarInformeFichaEmpleado" UID="{CCD0007A-F1FF-46C2-8BB8-09981EAE4FB7}">
<Parameters> <Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result"> <Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter> </Parameter>
<Parameter Name="EmpleadoID" DataType="String" Flag="In" > <Parameter Name="ListaID" DataType="TIntegerArray" Flag="In" >
</Parameter> </Parameter>
</Parameters> </Parameters>
</Operation> </Operation>
<Operation Name="GenerateEtiquetasReport" UID="{910E5F58-7F8E-4D4C-A6A8-2FAD54689219}"> <Operation Name="GenerarInformeEtiquetas" UID="{910E5F58-7F8E-4D4C-A6A8-2FAD54689219}">
<Parameters> <Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result"> <Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter> </Parameter>
<Parameter Name="ContactosID" DataType="String" Flag="In" > <Parameter Name="ListaID" DataType="TIntegerArray" Flag="In" >
</Parameter> </Parameter>
</Parameters> </Parameters>
</Operation> </Operation>
@ -178,11 +178,11 @@
<Interfaces> <Interfaces>
<Interface Name="Default" UID="{3B68252A-EE6A-4D37-B250-93F2DB940DDF}"> <Interface Name="Default" UID="{3B68252A-EE6A-4D37-B250-93F2DB940DDF}">
<Operations> <Operations>
<Operation Name="GenerateReport" UID="{84D34140-D9D3-42FE-AD5E-A619EC50268F}"> <Operation Name="GenerarInforme" UID="{84D34140-D9D3-42FE-AD5E-A619EC50268F}">
<Parameters> <Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result"> <Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter> </Parameter>
<Parameter Name="ID" DataType="String" Flag="In" > <Parameter Name="ListaID" DataType="TIntegerArray" Flag="In" >
</Parameter> </Parameter>
</Parameters> </Parameters>
</Operation> </Operation>
@ -194,14 +194,6 @@
<Interfaces> <Interfaces>
<Interface Name="Default" UID="{22580F16-8FFC-4FE0-BCDD-5533D5DB1F55}"> <Interface Name="Default" UID="{22580F16-8FFC-4FE0-BCDD-5533D5DB1F55}">
<Operations> <Operations>
<Operation Name="GenerateReport" UID="{04293024-D9C5-4C05-A44F-3F59BF66D0AF}">
<Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter>
<Parameter Name="ID" DataType="Integer" Flag="In" >
</Parameter>
</Parameters>
</Operation>
</Operations> </Operations>
</Interface> </Interface>
</Interfaces> </Interfaces>
@ -210,14 +202,6 @@
<Interfaces> <Interfaces>
<Interface Name="Default" UID="{33F414D0-0D0B-4384-96CB-D94BC97A0C39}"> <Interface Name="Default" UID="{33F414D0-0D0B-4384-96CB-D94BC97A0C39}">
<Operations> <Operations>
<Operation Name="GenerateReport" UID="{2A2969AB-0C86-43B0-85B0-242F965119F3}">
<Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter>
<Parameter Name="ID" DataType="String" Flag="In" >
</Parameter>
</Parameters>
</Operation>
</Operations> </Operations>
</Interface> </Interface>
</Interfaces> </Interfaces>
@ -226,14 +210,6 @@
<Interfaces> <Interfaces>
<Interface Name="Default" UID="{6540A037-9847-4650-89BB-7B349C6004DF}"> <Interface Name="Default" UID="{6540A037-9847-4650-89BB-7B349C6004DF}">
<Operations> <Operations>
<Operation Name="GenerateReport" UID="{0FEBE165-89EA-4325-84DE-A7024649D749}">
<Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter>
<Parameter Name="ID" DataType="String" Flag="In" >
</Parameter>
</Parameters>
</Operation>
</Operations> </Operations>
</Interface> </Interface>
</Interfaces> </Interfaces>
@ -242,15 +218,15 @@
<Interfaces> <Interfaces>
<Interface Name="Default" UID="{56B4FFF0-AB1B-46B2-BA16-ABD5360F6311}"> <Interface Name="Default" UID="{56B4FFF0-AB1B-46B2-BA16-ABD5360F6311}">
<Operations> <Operations>
<Operation Name="GenerateReport" UID="{8410D113-BEA9-4A0A-B5C7-BE0AFF66DA02}"> <Operation Name="GenerarInforme" UID="{8410D113-BEA9-4A0A-B5C7-BE0AFF66DA02}">
<Parameters> <Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result"> <Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter> </Parameter>
<Parameter Name="FacturaID" DataType="String" Flag="In" > <Parameter Name="ListaID" DataType="TIntegerArray" Flag="In" >
</Parameter> </Parameter>
</Parameters> </Parameters>
</Operation> </Operation>
<Operation Name="GenerateReportEnWord" UID="{04A25AE7-9AC6-474F-9A4A-04D8292959E6}"> <Operation Name="GenerarInformeEnWord" UID="{04A25AE7-9AC6-474F-9A4A-04D8292959E6}">
<Parameters> <Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result"> <Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter> </Parameter>
@ -258,6 +234,14 @@
</Parameter> </Parameter>
</Parameters> </Parameters>
</Operation> </Operation>
<Operation Name="GenerarInformeEnPDF" UID="{F2F894D3-6C63-4931-999B-79D3C9C5EAFC}">
<Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter>
<Parameter Name="ListaID" DataType="TIntegerArray" Flag="In" >
</Parameter>
</Parameters>
</Operation>
</Operations> </Operations>
</Interface> </Interface>
</Interfaces> </Interfaces>
@ -266,14 +250,6 @@
<Interfaces> <Interfaces>
<Interface Name="Default" UID="{7655160C-7023-452E-BB0E-C97E29B915E7}"> <Interface Name="Default" UID="{7655160C-7023-452E-BB0E-C97E29B915E7}">
<Operations> <Operations>
<Operation Name="GenerateReport" UID="{B1B95D4E-DC3A-41AF-BC71-D8F99D5B793F}">
<Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter>
<Parameter Name="FacturaID" DataType="String" Flag="In" >
</Parameter>
</Parameters>
</Operation>
</Operations> </Operations>
</Interface> </Interface>
</Interfaces> </Interfaces>
@ -286,7 +262,7 @@
<Parameters> <Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result"> <Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter> </Parameter>
<Parameter Name="ListaID" DataType="String" Flag="In" > <Parameter Name="ListaID" DataType="TIntegerArray" Flag="In" >
</Parameter> </Parameter>
</Parameters> </Parameters>
</Operation> </Operation>
@ -310,7 +286,7 @@
<Parameters> <Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result"> <Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter> </Parameter>
<Parameter Name="ListaID" DataType="String" Flag="In" > <Parameter Name="ListaID" DataType="TIntegerArray" Flag="In" >
</Parameter> </Parameter>
</Parameters> </Parameters>
</Operation> </Operation>
@ -322,15 +298,15 @@
<Interfaces> <Interfaces>
<Interface Name="Default" UID="{3DCC03E4-E9CE-4798-99D4-7170C9CF815B}"> <Interface Name="Default" UID="{3DCC03E4-E9CE-4798-99D4-7170C9CF815B}">
<Operations> <Operations>
<Operation Name="GenerateReport" UID="{F038EDC3-4754-4A6D-B705-B75E994E7A95}"> <Operation Name="GenerarInforme" UID="{F038EDC3-4754-4A6D-B705-B75E994E7A95}">
<Parameters> <Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result"> <Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter> </Parameter>
<Parameter Name="ID" DataType="String" Flag="In" > <Parameter Name="ListaID" DataType="TIntegerArray" Flag="In" >
</Parameter> </Parameter>
</Parameters> </Parameters>
</Operation> </Operation>
<Operation Name="GenerateReportEnWord" UID="{05C0363D-B517-42CB-831E-E32337E9A20D}"> <Operation Name="GenerarInformeEnWord" UID="{05C0363D-B517-42CB-831E-E32337E9A20D}">
<Parameters> <Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result"> <Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter> </Parameter>
@ -338,6 +314,14 @@
</Parameter> </Parameter>
</Parameters> </Parameters>
</Operation> </Operation>
<Operation Name="GenerarInformeEnPDF" UID="{30ACCA85-C55A-4F13-8644-A15C1D84E39D}">
<Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter>
<Parameter Name="ListaID" DataType="TIntegerArray" Flag="In" >
</Parameter>
</Parameters>
</Operation>
</Operations> </Operations>
</Interface> </Interface>
</Interfaces> </Interfaces>
@ -346,15 +330,15 @@
<Interfaces> <Interfaces>
<Interface Name="Default" UID="{6E910718-9AB0-47BB-9875-B0DE66A68D7A}"> <Interface Name="Default" UID="{6E910718-9AB0-47BB-9875-B0DE66A68D7A}">
<Operations> <Operations>
<Operation Name="GenerateReport" UID="{8CB6A25E-C350-4F63-B567-22D9A850BD87}"> <Operation Name="GenerarInforme" UID="{8CB6A25E-C350-4F63-B567-22D9A850BD87}">
<Parameters> <Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result"> <Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter> </Parameter>
<Parameter Name="ID" DataType="String" Flag="In" > <Parameter Name="ListaID" DataType="TIntegerArray" Flag="In" >
</Parameter> </Parameter>
</Parameters> </Parameters>
</Operation> </Operation>
<Operation Name="GenerateEtiquetas" UID="{260CD213-F125-422B-9BD1-401729460DF0}"> <Operation Name="GenerarInformeEtiquetas" UID="{260CD213-F125-422B-9BD1-401729460DF0}">
<Parameters> <Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result"> <Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter> </Parameter>
@ -364,7 +348,7 @@
</Parameter> </Parameter>
</Parameters> </Parameters>
</Operation> </Operation>
<Operation Name="GenerateReportEnWord" UID="{FFBAE6B2-0F77-4F2F-A630-9A09AD7A2379}"> <Operation Name="GenerarInformeEnWord" UID="{FFBAE6B2-0F77-4F2F-A630-9A09AD7A2379}">
<Parameters> <Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result"> <Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter> </Parameter>
@ -372,6 +356,14 @@
</Parameter> </Parameter>
</Parameters> </Parameters>
</Operation> </Operation>
<Operation Name="GenerarInformeEnPDF" UID="{83F24406-D1B9-43DE-97E9-42A899433DD4}">
<Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter>
<Parameter Name="ListaID" DataType="TIntegerArray" Flag="In" >
</Parameter>
</Parameters>
</Operation>
</Operations> </Operations>
</Interface> </Interface>
</Interfaces> </Interfaces>
@ -380,14 +372,6 @@
<Interfaces> <Interfaces>
<Interface Name="Default" UID="{66B71884-5CE4-4574-B825-60CDA956B628}"> <Interface Name="Default" UID="{66B71884-5CE4-4574-B825-60CDA956B628}">
<Operations> <Operations>
<Operation Name="GenerateReport" UID="{C735D3BE-A3FE-49FA-8874-C5E4A7E01EB2}">
<Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter>
<Parameter Name="ID" DataType="String" Flag="In" >
</Parameter>
</Parameters>
</Operation>
</Operations> </Operations>
</Interface> </Interface>
</Interfaces> </Interfaces>
@ -497,6 +481,9 @@
<Array Name="TRdxEmpresasArray" UID="{CA344218-3432-40B8-8FB7-F5BB30406098}"> <Array Name="TRdxEmpresasArray" UID="{CA344218-3432-40B8-8FB7-F5BB30406098}">
<ElementType DataType="Integer" /> <ElementType DataType="Integer" />
</Array> </Array>
<Array Name="TIntegerArray" UID="{975ADCF3-6E99-4221-8B22-CD0F5FACD1FE}">
<ElementType DataType="Integer" />
</Array>
</Arrays> </Arrays>
<Uses> <Uses>
<Use Name="DataAbstract4" UID="{1E2905B4-36C9-4EAA-9BB9-DF3D3C9BBE75}" Rodl="$(Data Abstract for Delphi)\Source\DataAbstract4.RODL" AbsoluteRodl="C:\Archivos de programa\RemObjects Software\Data Abstract for Delphi\Source\DataAbstract4.RODL"> <Use Name="DataAbstract4" UID="{1E2905B4-36C9-4EAA-9BB9-DF3D3C9BBE75}" Rodl="$(Data Abstract for Delphi)\Source\DataAbstract4.RODL" AbsoluteRodl="C:\Archivos de programa\RemObjects Software\Data Abstract for Delphi\Source\DataAbstract4.RODL">

View File

@ -84,6 +84,7 @@ type
IsrvProvinciasPoblaciones = interface; IsrvProvinciasPoblaciones = interface;
TRdxEmpresasArray = class; TRdxEmpresasArray = class;
TIntegerArray = class;
TRdxLoginInfo = class; TRdxLoginInfo = class;
@ -159,11 +160,45 @@ type
property InnerArray: TRdxEmpresasArray_Integer read fItems; property InnerArray: TRdxEmpresasArray_Integer read fItems;
end; end;
{ TIntegerArray }
TIntegerArray_Integer = array of Integer;
TIntegerArray = class(TROArray)
private
fCount: Integer;
fItems : TIntegerArray_Integer;
protected
procedure Grow; virtual;
function GetItems(aIndex: integer): Integer;
procedure SetItems(aIndex: integer; const Value: Integer);
function GetCount: integer; override;
public
class function GetItemType: PTypeInfo; override;
class function GetItemSize: integer; override;
function GetItemRef(aIndex: integer): pointer; override;
procedure Clear; override;
procedure Delete(aIndex: integer); override;
procedure Resize(ElementCount: integer); override;
procedure Assign(iSource:TPersistent); override;
procedure ReadComplex(ASerializer: TObject); override;
procedure WriteComplex(ASerializer: TObject); override;
function Add(const Value:Integer): integer;
function GetIndex(const aPropertyName : string;
const aPropertyValue : Variant;
StartFrom : integer = 0;
Options : TROSearchOptions = [soIgnoreCase]) : integer; override;
property Count : integer read GetCount;
property Items[Index: integer]:Integer read GetItems write SetItems; default;
property InnerArray: TIntegerArray_Integer read fItems;
end;
{ IsrvContactos } { IsrvContactos }
IsrvContactos = interface(IDataAbstractService) IsrvContactos = interface(IDataAbstractService)
['{28CCDC07-A3A4-4917-89B4-64423DC70C9D}'] ['{28CCDC07-A3A4-4917-89B4-64423DC70C9D}']
function GenerateFichaEmpleadoReport(const EmpleadoID: String): Binary; function GenerarInformeFichaEmpleado(const ListaID: TIntegerArray): Binary;
function GenerateEtiquetasReport(const ContactosID: String): Binary; function GenerarInformeEtiquetas(const ListaID: TIntegerArray): Binary;
function DarListaDescripcionesProveedores: String; function DarListaDescripcionesProveedores: String;
function DarListaContratosEmpleados: String; function DarListaContratosEmpleados: String;
end; end;
@ -178,8 +213,8 @@ type
protected protected
function __GetInterfaceName:string; override; function __GetInterfaceName:string; override;
function GenerateFichaEmpleadoReport(const EmpleadoID: String): Binary; function GenerarInformeFichaEmpleado(const ListaID: TIntegerArray): Binary;
function GenerateEtiquetasReport(const ContactosID: String): Binary; function GenerarInformeEtiquetas(const ListaID: TIntegerArray): Binary;
function DarListaDescripcionesProveedores: String; function DarListaDescripcionesProveedores: String;
function DarListaContratosEmpleados: String; function DarListaContratosEmpleados: String;
end; end;
@ -384,7 +419,7 @@ type
{ IsrvRecibosCliente } { IsrvRecibosCliente }
IsrvRecibosCliente = interface(IDataAbstractService) IsrvRecibosCliente = interface(IDataAbstractService)
['{3B68252A-EE6A-4D37-B250-93F2DB940DDF}'] ['{3B68252A-EE6A-4D37-B250-93F2DB940DDF}']
function GenerateReport(const ID: String): Binary; function GenerarInforme(const ListaID: TIntegerArray): Binary;
end; end;
{ CosrvRecibosCliente } { CosrvRecibosCliente }
@ -397,13 +432,12 @@ type
protected protected
function __GetInterfaceName:string; override; function __GetInterfaceName:string; override;
function GenerateReport(const ID: String): Binary; function GenerarInforme(const ListaID: TIntegerArray): Binary;
end; end;
{ IsrvRecibosProveedor } { IsrvRecibosProveedor }
IsrvRecibosProveedor = interface(IDataAbstractService) IsrvRecibosProveedor = interface(IDataAbstractService)
['{22580F16-8FFC-4FE0-BCDD-5533D5DB1F55}'] ['{22580F16-8FFC-4FE0-BCDD-5533D5DB1F55}']
function GenerateReport(const ID: Integer): Binary;
end; end;
{ CosrvRecibosProveedor } { CosrvRecibosProveedor }
@ -416,13 +450,11 @@ type
protected protected
function __GetInterfaceName:string; override; function __GetInterfaceName:string; override;
function GenerateReport(const ID: Integer): Binary;
end; end;
{ IsrvRemesasCliente } { IsrvRemesasCliente }
IsrvRemesasCliente = interface(IDataAbstractService) IsrvRemesasCliente = interface(IDataAbstractService)
['{33F414D0-0D0B-4384-96CB-D94BC97A0C39}'] ['{33F414D0-0D0B-4384-96CB-D94BC97A0C39}']
function GenerateReport(const ID: String): Binary;
end; end;
{ CosrvRemesasCliente } { CosrvRemesasCliente }
@ -435,13 +467,11 @@ type
protected protected
function __GetInterfaceName:string; override; function __GetInterfaceName:string; override;
function GenerateReport(const ID: String): Binary;
end; end;
{ IsrvRemesasProveedor } { IsrvRemesasProveedor }
IsrvRemesasProveedor = interface(IDataAbstractService) IsrvRemesasProveedor = interface(IDataAbstractService)
['{6540A037-9847-4650-89BB-7B349C6004DF}'] ['{6540A037-9847-4650-89BB-7B349C6004DF}']
function GenerateReport(const ID: String): Binary;
end; end;
{ CosrvRemesasProveedor } { CosrvRemesasProveedor }
@ -454,14 +484,14 @@ type
protected protected
function __GetInterfaceName:string; override; function __GetInterfaceName:string; override;
function GenerateReport(const ID: String): Binary;
end; end;
{ IsrvFacturasCliente } { IsrvFacturasCliente }
IsrvFacturasCliente = interface(IDataAbstractService) IsrvFacturasCliente = interface(IDataAbstractService)
['{56B4FFF0-AB1B-46B2-BA16-ABD5360F6311}'] ['{56B4FFF0-AB1B-46B2-BA16-ABD5360F6311}']
function GenerateReport(const FacturaID: String): Binary; function GenerarInforme(const ListaID: TIntegerArray): Binary;
function GenerateReportEnWord(const ID: Integer): Binary; function GenerarInformeEnWord(const ID: Integer): Binary;
function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
end; end;
{ CosrvFacturasCliente } { CosrvFacturasCliente }
@ -474,14 +504,14 @@ type
protected protected
function __GetInterfaceName:string; override; function __GetInterfaceName:string; override;
function GenerateReport(const FacturaID: String): Binary; function GenerarInforme(const ListaID: TIntegerArray): Binary;
function GenerateReportEnWord(const ID: Integer): Binary; function GenerarInformeEnWord(const ID: Integer): Binary;
function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
end; end;
{ IsrvFacturasProveedor } { IsrvFacturasProveedor }
IsrvFacturasProveedor = interface(IDataAbstractService) IsrvFacturasProveedor = interface(IDataAbstractService)
['{7655160C-7023-452E-BB0E-C97E29B915E7}'] ['{7655160C-7023-452E-BB0E-C97E29B915E7}']
function GenerateReport(const FacturaID: String): Binary;
end; end;
{ CosrvFacturasProveedor } { CosrvFacturasProveedor }
@ -494,16 +524,15 @@ type
protected protected
function __GetInterfaceName:string; override; function __GetInterfaceName:string; override;
function GenerateReport(const FacturaID: String): Binary;
end; end;
{ IsrvPresupuestosCliente } { IsrvPresupuestosCliente }
IsrvPresupuestosCliente = interface(IDataAbstractService) IsrvPresupuestosCliente = interface(IDataAbstractService)
['{8A06D5A7-8461-4F6E-8A8B-EC49C84C45D1}'] ['{8A06D5A7-8461-4F6E-8A8B-EC49C84C45D1}']
function GenerarInforme(const ListaID: String): Binary; function GenerarInforme(const ListaID: TIntegerArray): Binary;
function GenerarInformeEnWord(const ID: Integer): Binary; function GenerarInformeEnWord(const ID: Integer): Binary;
function GenerarCertificadoTrabajosEnWord(const ID: Integer): Binary; function GenerarCertificadoTrabajosEnWord(const ID: Integer): Binary;
function GenerarInformeEnPDF(const ListaID: String): Binary; function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
end; end;
{ CosrvPresupuestosCliente } { CosrvPresupuestosCliente }
@ -516,17 +545,18 @@ type
protected protected
function __GetInterfaceName:string; override; function __GetInterfaceName:string; override;
function GenerarInforme(const ListaID: String): Binary; function GenerarInforme(const ListaID: TIntegerArray): Binary;
function GenerarInformeEnWord(const ID: Integer): Binary; function GenerarInformeEnWord(const ID: Integer): Binary;
function GenerarCertificadoTrabajosEnWord(const ID: Integer): Binary; function GenerarCertificadoTrabajosEnWord(const ID: Integer): Binary;
function GenerarInformeEnPDF(const ListaID: String): Binary; function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
end; end;
{ IsrvPedidosProveedor } { IsrvPedidosProveedor }
IsrvPedidosProveedor = interface(IDataAbstractService) IsrvPedidosProveedor = interface(IDataAbstractService)
['{3DCC03E4-E9CE-4798-99D4-7170C9CF815B}'] ['{3DCC03E4-E9CE-4798-99D4-7170C9CF815B}']
function GenerateReport(const ID: String): Binary; function GenerarInforme(const ListaID: TIntegerArray): Binary;
function GenerateReportEnWord(const ID: Integer): Binary; function GenerarInformeEnWord(const ID: Integer): Binary;
function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
end; end;
{ CosrvPedidosProveedor } { CosrvPedidosProveedor }
@ -539,16 +569,18 @@ type
protected protected
function __GetInterfaceName:string; override; function __GetInterfaceName:string; override;
function GenerateReport(const ID: String): Binary; function GenerarInforme(const ListaID: TIntegerArray): Binary;
function GenerateReportEnWord(const ID: Integer): Binary; function GenerarInformeEnWord(const ID: Integer): Binary;
function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
end; end;
{ IsrvAlbaranesCliente } { IsrvAlbaranesCliente }
IsrvAlbaranesCliente = interface(IDataAbstractService) IsrvAlbaranesCliente = interface(IDataAbstractService)
['{6E910718-9AB0-47BB-9875-B0DE66A68D7A}'] ['{6E910718-9AB0-47BB-9875-B0DE66A68D7A}']
function GenerateReport(const ID: String): Binary; function GenerarInforme(const ListaID: TIntegerArray): Binary;
function GenerateEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary; function GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary;
function GenerateReportEnWord(const ID: Integer): Binary; function GenerarInformeEnWord(const ID: Integer): Binary;
function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
end; end;
{ CosrvAlbaranesCliente } { CosrvAlbaranesCliente }
@ -561,15 +593,15 @@ type
protected protected
function __GetInterfaceName:string; override; function __GetInterfaceName:string; override;
function GenerateReport(const ID: String): Binary; function GenerarInforme(const ListaID: TIntegerArray): Binary;
function GenerateEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary; function GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary;
function GenerateReportEnWord(const ID: Integer): Binary; function GenerarInformeEnWord(const ID: Integer): Binary;
function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
end; end;
{ IsrvAlbaranesProveedor } { IsrvAlbaranesProveedor }
IsrvAlbaranesProveedor = interface(IDataAbstractService) IsrvAlbaranesProveedor = interface(IDataAbstractService)
['{66B71884-5CE4-4574-B825-60CDA956B628}'] ['{66B71884-5CE4-4574-B825-60CDA956B628}']
function GenerateReport(const ID: String): Binary;
end; end;
{ CosrvAlbaranesProveedor } { CosrvAlbaranesProveedor }
@ -582,7 +614,6 @@ type
protected protected
function __GetInterfaceName:string; override; function __GetInterfaceName:string; override;
function GenerateReport(const ID: String): Binary;
end; end;
{ IsrvReferencias } { IsrvReferencias }
@ -819,6 +850,138 @@ begin
WriteInteger(GetArrayElementName(GetItemType, GetItemRef(i)), otSLong, fItems[i], i); WriteInteger(GetArrayElementName(GetItemType, GetItemRef(i)), otSLong, fItems[i], i);
end; end;
{ TIntegerArray }
procedure TIntegerArray.Assign(iSource: TPersistent);
var lSource:TIntegerArray;
i:integer;
begin
if (iSource is TIntegerArray) then begin
lSource := TIntegerArray(iSource);
Clear();
Resize(lSource.Count);
for i := 0 to Count-1 do begin
Items[i] := lSource.Items[i];
end;
end
else begin
inherited Assign(iSource);
end;
end;
class function TIntegerArray.GetItemType: PTypeInfo;
begin
result := TypeInfo(Integer);
end;
class function TIntegerArray.GetItemSize: integer;
begin
result := SizeOf(Integer);
end;
function TIntegerArray.GetItems(aIndex: integer): Integer;
begin
if (aIndex < 0) or (aIndex >= Count) then RaiseError(err_ArrayIndexOutOfBounds,[aIndex]);
result := fItems[aIndex];
end;
function TIntegerArray.GetItemRef(aIndex: integer): pointer;
begin
if (aIndex < 0) or (aIndex >= Count) then RaiseError(err_ArrayIndexOutOfBounds,[aIndex]);
result := @fItems[aIndex];
end;
procedure TIntegerArray.Clear;
begin
SetLength(fItems, 0);
FCount := 0;
end;
procedure TIntegerArray.Delete(aIndex: integer);
var i: integer;
begin
if (aIndex>=Count) then RaiseError(err_InvalidIndex, [aIndex]);
if (aIndex<Count-1) then
for i := aIndex to Count-2 do fItems[i] := fItems[i+1];
SetLength(fItems, Count-1);
Dec(FCount);
end;
procedure TIntegerArray.SetItems(aIndex: integer; const Value: Integer);
begin
if (aIndex < 0) or (aIndex >= Count) then RaiseError(err_ArrayIndexOutOfBounds,[aIndex]);
if fItems[aIndex] <> Value then begin
fItems[aIndex] := Value;
end;
end;
procedure TIntegerArray.Resize(ElementCount: integer);
begin
if fCount = ElementCount then Exit;
SetLength(fItems, ElementCount);
FCount := ElementCount;
end;
function TIntegerArray.GetCount: integer;
begin
result := FCount;
end;
procedure TIntegerArray.Grow;
var
Delta, Capacity: Integer;
begin
Capacity := Length(fItems);
if Capacity > 64 then
Delta := Capacity div 4
else
if Capacity > 8 then
Delta := 16
else
Delta := 4;
SetLength(fItems, Capacity + Delta);
end;
function TIntegerArray.Add(const Value: Integer): integer;
begin
Result := Count;
if Length(fItems) = Result then
Grow;
fItems[result] := Value;
Inc(fCount);
end;
function TIntegerArray.GetIndex(const aPropertyName: string;
const aPropertyValue: Variant; StartFrom: integer;
Options: TROSearchOptions): integer;
begin
result := -1;
end;
procedure TIntegerArray.ReadComplex(ASerializer: TObject);
var
lval: Integer;
i: integer;
begin
for i := 0 to Count-1 do begin
with TROSerializer(ASerializer) do
ReadInteger(GetArrayElementName(GetItemType, GetItemRef(i)), otSLong, lval, i);
Items[i] := lval;
end;
end;
procedure TIntegerArray.WriteComplex(ASerializer: TObject);
var
i: integer;
begin
for i := 0 to Count-1 do
with TROSerializer(ASerializer) do
WriteInteger(GetArrayElementName(GetItemType, GetItemRef(i)), otSLong, fItems[i], i);
end;
{ TRdxLoginInfo } { TRdxLoginInfo }
procedure TRdxLoginInfo.Assign(iSource: TPersistent); procedure TRdxLoginInfo.Assign(iSource: TPersistent);
@ -970,12 +1133,12 @@ begin
result := 'srvContactos'; result := 'srvContactos';
end; end;
function TsrvContactos_Proxy.GenerateFichaEmpleadoReport(const EmpleadoID: String): Binary; function TsrvContactos_Proxy.GenerarInformeFichaEmpleado(const ListaID: TIntegerArray): Binary;
begin begin
try try
result := nil; result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateFichaEmpleadoReport'); __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInformeFichaEmpleado');
__Message.Write('EmpleadoID', TypeInfo(String), EmpleadoID, []); __Message.Write('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
__Message.Finalize; __Message.Finalize;
__TransportChannel.Dispatch(__Message); __TransportChannel.Dispatch(__Message);
@ -987,12 +1150,12 @@ begin
end end
end; end;
function TsrvContactos_Proxy.GenerateEtiquetasReport(const ContactosID: String): Binary; function TsrvContactos_Proxy.GenerarInformeEtiquetas(const ListaID: TIntegerArray): Binary;
begin begin
try try
result := nil; result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateEtiquetasReport'); __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInformeEtiquetas');
__Message.Write('ContactosID', TypeInfo(String), ContactosID, []); __Message.Write('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
__Message.Finalize; __Message.Finalize;
__TransportChannel.Dispatch(__Message); __TransportChannel.Dispatch(__Message);
@ -1266,12 +1429,12 @@ begin
result := 'srvRecibosCliente'; result := 'srvRecibosCliente';
end; end;
function TsrvRecibosCliente_Proxy.GenerateReport(const ID: String): Binary; function TsrvRecibosCliente_Proxy.GenerarInforme(const ListaID: TIntegerArray): Binary;
begin begin
try try
result := nil; result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateReport'); __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInforme');
__Message.Write('ID', TypeInfo(String), ID, []); __Message.Write('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
__Message.Finalize; __Message.Finalize;
__TransportChannel.Dispatch(__Message); __TransportChannel.Dispatch(__Message);
@ -1290,30 +1453,11 @@ begin
result := TsrvRecibosProveedor_Proxy.Create(aMessage, aTransportChannel); result := TsrvRecibosProveedor_Proxy.Create(aMessage, aTransportChannel);
end; end;
{ TsrvRecibosProveedor_Proxy }
function TsrvRecibosProveedor_Proxy.__GetInterfaceName:string; function TsrvRecibosProveedor_Proxy.__GetInterfaceName:string;
begin begin
result := 'srvRecibosProveedor'; result := 'srvRecibosProveedor';
end; end;
function TsrvRecibosProveedor_Proxy.GenerateReport(const ID: Integer): Binary;
begin
try
result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateReport');
__Message.Write('ID', TypeInfo(Integer), ID, []);
__Message.Finalize;
__TransportChannel.Dispatch(__Message);
__Message.Read('Result', TypeInfo(Binary), result, []);
finally
__Message.UnsetAttributes(__TransportChannel);
__Message.FreeStream;
end
end;
{ CosrvRemesasCliente } { CosrvRemesasCliente }
class function CosrvRemesasCliente.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvRemesasCliente; class function CosrvRemesasCliente.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvRemesasCliente;
@ -1321,30 +1465,11 @@ begin
result := TsrvRemesasCliente_Proxy.Create(aMessage, aTransportChannel); result := TsrvRemesasCliente_Proxy.Create(aMessage, aTransportChannel);
end; end;
{ TsrvRemesasCliente_Proxy }
function TsrvRemesasCliente_Proxy.__GetInterfaceName:string; function TsrvRemesasCliente_Proxy.__GetInterfaceName:string;
begin begin
result := 'srvRemesasCliente'; result := 'srvRemesasCliente';
end; end;
function TsrvRemesasCliente_Proxy.GenerateReport(const ID: String): Binary;
begin
try
result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateReport');
__Message.Write('ID', TypeInfo(String), ID, []);
__Message.Finalize;
__TransportChannel.Dispatch(__Message);
__Message.Read('Result', TypeInfo(Binary), result, []);
finally
__Message.UnsetAttributes(__TransportChannel);
__Message.FreeStream;
end
end;
{ CosrvRemesasProveedor } { CosrvRemesasProveedor }
class function CosrvRemesasProveedor.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvRemesasProveedor; class function CosrvRemesasProveedor.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvRemesasProveedor;
@ -1352,30 +1477,11 @@ begin
result := TsrvRemesasProveedor_Proxy.Create(aMessage, aTransportChannel); result := TsrvRemesasProveedor_Proxy.Create(aMessage, aTransportChannel);
end; end;
{ TsrvRemesasProveedor_Proxy }
function TsrvRemesasProveedor_Proxy.__GetInterfaceName:string; function TsrvRemesasProveedor_Proxy.__GetInterfaceName:string;
begin begin
result := 'srvRemesasProveedor'; result := 'srvRemesasProveedor';
end; end;
function TsrvRemesasProveedor_Proxy.GenerateReport(const ID: String): Binary;
begin
try
result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateReport');
__Message.Write('ID', TypeInfo(String), ID, []);
__Message.Finalize;
__TransportChannel.Dispatch(__Message);
__Message.Read('Result', TypeInfo(Binary), result, []);
finally
__Message.UnsetAttributes(__TransportChannel);
__Message.FreeStream;
end
end;
{ CosrvFacturasCliente } { CosrvFacturasCliente }
class function CosrvFacturasCliente.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvFacturasCliente; class function CosrvFacturasCliente.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvFacturasCliente;
@ -1390,12 +1496,12 @@ begin
result := 'srvFacturasCliente'; result := 'srvFacturasCliente';
end; end;
function TsrvFacturasCliente_Proxy.GenerateReport(const FacturaID: String): Binary; function TsrvFacturasCliente_Proxy.GenerarInforme(const ListaID: TIntegerArray): Binary;
begin begin
try try
result := nil; result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateReport'); __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInforme');
__Message.Write('FacturaID', TypeInfo(String), FacturaID, []); __Message.Write('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
__Message.Finalize; __Message.Finalize;
__TransportChannel.Dispatch(__Message); __TransportChannel.Dispatch(__Message);
@ -1407,11 +1513,11 @@ begin
end end
end; end;
function TsrvFacturasCliente_Proxy.GenerateReportEnWord(const ID: Integer): Binary; function TsrvFacturasCliente_Proxy.GenerarInformeEnWord(const ID: Integer): Binary;
begin begin
try try
result := nil; result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateReportEnWord'); __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInformeEnWord');
__Message.Write('ID', TypeInfo(Integer), ID, []); __Message.Write('ID', TypeInfo(Integer), ID, []);
__Message.Finalize; __Message.Finalize;
@ -1424,6 +1530,23 @@ begin
end end
end; end;
function TsrvFacturasCliente_Proxy.GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
begin
try
result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInformeEnPDF');
__Message.Write('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
__Message.Finalize;
__TransportChannel.Dispatch(__Message);
__Message.Read('Result', TypeInfo(Binary), result, []);
finally
__Message.UnsetAttributes(__TransportChannel);
__Message.FreeStream;
end
end;
{ CosrvFacturasProveedor } { CosrvFacturasProveedor }
class function CosrvFacturasProveedor.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvFacturasProveedor; class function CosrvFacturasProveedor.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvFacturasProveedor;
@ -1431,30 +1554,11 @@ begin
result := TsrvFacturasProveedor_Proxy.Create(aMessage, aTransportChannel); result := TsrvFacturasProveedor_Proxy.Create(aMessage, aTransportChannel);
end; end;
{ TsrvFacturasProveedor_Proxy }
function TsrvFacturasProveedor_Proxy.__GetInterfaceName:string; function TsrvFacturasProveedor_Proxy.__GetInterfaceName:string;
begin begin
result := 'srvFacturasProveedor'; result := 'srvFacturasProveedor';
end; end;
function TsrvFacturasProveedor_Proxy.GenerateReport(const FacturaID: String): Binary;
begin
try
result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateReport');
__Message.Write('FacturaID', TypeInfo(String), FacturaID, []);
__Message.Finalize;
__TransportChannel.Dispatch(__Message);
__Message.Read('Result', TypeInfo(Binary), result, []);
finally
__Message.UnsetAttributes(__TransportChannel);
__Message.FreeStream;
end
end;
{ CosrvPresupuestosCliente } { CosrvPresupuestosCliente }
class function CosrvPresupuestosCliente.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvPresupuestosCliente; class function CosrvPresupuestosCliente.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvPresupuestosCliente;
@ -1469,12 +1573,12 @@ begin
result := 'srvPresupuestosCliente'; result := 'srvPresupuestosCliente';
end; end;
function TsrvPresupuestosCliente_Proxy.GenerarInforme(const ListaID: String): Binary; function TsrvPresupuestosCliente_Proxy.GenerarInforme(const ListaID: TIntegerArray): Binary;
begin begin
try try
result := nil; result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInforme'); __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInforme');
__Message.Write('ListaID', TypeInfo(String), ListaID, []); __Message.Write('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
__Message.Finalize; __Message.Finalize;
__TransportChannel.Dispatch(__Message); __TransportChannel.Dispatch(__Message);
@ -1520,12 +1624,12 @@ begin
end end
end; end;
function TsrvPresupuestosCliente_Proxy.GenerarInformeEnPDF(const ListaID: String): Binary; function TsrvPresupuestosCliente_Proxy.GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
begin begin
try try
result := nil; result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInformeEnPDF'); __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInformeEnPDF');
__Message.Write('ListaID', TypeInfo(String), ListaID, []); __Message.Write('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
__Message.Finalize; __Message.Finalize;
__TransportChannel.Dispatch(__Message); __TransportChannel.Dispatch(__Message);
@ -1551,12 +1655,12 @@ begin
result := 'srvPedidosProveedor'; result := 'srvPedidosProveedor';
end; end;
function TsrvPedidosProveedor_Proxy.GenerateReport(const ID: String): Binary; function TsrvPedidosProveedor_Proxy.GenerarInforme(const ListaID: TIntegerArray): Binary;
begin begin
try try
result := nil; result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateReport'); __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInforme');
__Message.Write('ID', TypeInfo(String), ID, []); __Message.Write('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
__Message.Finalize; __Message.Finalize;
__TransportChannel.Dispatch(__Message); __TransportChannel.Dispatch(__Message);
@ -1568,11 +1672,11 @@ begin
end end
end; end;
function TsrvPedidosProveedor_Proxy.GenerateReportEnWord(const ID: Integer): Binary; function TsrvPedidosProveedor_Proxy.GenerarInformeEnWord(const ID: Integer): Binary;
begin begin
try try
result := nil; result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateReportEnWord'); __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInformeEnWord');
__Message.Write('ID', TypeInfo(Integer), ID, []); __Message.Write('ID', TypeInfo(Integer), ID, []);
__Message.Finalize; __Message.Finalize;
@ -1585,6 +1689,23 @@ begin
end end
end; end;
function TsrvPedidosProveedor_Proxy.GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
begin
try
result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInformeEnPDF');
__Message.Write('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
__Message.Finalize;
__TransportChannel.Dispatch(__Message);
__Message.Read('Result', TypeInfo(Binary), result, []);
finally
__Message.UnsetAttributes(__TransportChannel);
__Message.FreeStream;
end
end;
{ CosrvAlbaranesCliente } { CosrvAlbaranesCliente }
class function CosrvAlbaranesCliente.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvAlbaranesCliente; class function CosrvAlbaranesCliente.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvAlbaranesCliente;
@ -1599,12 +1720,12 @@ begin
result := 'srvAlbaranesCliente'; result := 'srvAlbaranesCliente';
end; end;
function TsrvAlbaranesCliente_Proxy.GenerateReport(const ID: String): Binary; function TsrvAlbaranesCliente_Proxy.GenerarInforme(const ListaID: TIntegerArray): Binary;
begin begin
try try
result := nil; result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateReport'); __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInforme');
__Message.Write('ID', TypeInfo(String), ID, []); __Message.Write('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
__Message.Finalize; __Message.Finalize;
__TransportChannel.Dispatch(__Message); __TransportChannel.Dispatch(__Message);
@ -1616,11 +1737,11 @@ begin
end end
end; end;
function TsrvAlbaranesCliente_Proxy.GenerateEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary; function TsrvAlbaranesCliente_Proxy.GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary;
begin begin
try try
result := nil; result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateEtiquetas'); __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInformeEtiquetas');
__Message.Write('ID', TypeInfo(Integer), ID, []); __Message.Write('ID', TypeInfo(Integer), ID, []);
__Message.Write('withRefCliente', TypeInfo(Boolean), withRefCliente, []); __Message.Write('withRefCliente', TypeInfo(Boolean), withRefCliente, []);
__Message.Finalize; __Message.Finalize;
@ -1634,11 +1755,11 @@ begin
end end
end; end;
function TsrvAlbaranesCliente_Proxy.GenerateReportEnWord(const ID: Integer): Binary; function TsrvAlbaranesCliente_Proxy.GenerarInformeEnWord(const ID: Integer): Binary;
begin begin
try try
result := nil; result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateReportEnWord'); __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInformeEnWord');
__Message.Write('ID', TypeInfo(Integer), ID, []); __Message.Write('ID', TypeInfo(Integer), ID, []);
__Message.Finalize; __Message.Finalize;
@ -1651,6 +1772,23 @@ begin
end end
end; end;
function TsrvAlbaranesCliente_Proxy.GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
begin
try
result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInformeEnPDF');
__Message.Write('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
__Message.Finalize;
__TransportChannel.Dispatch(__Message);
__Message.Read('Result', TypeInfo(Binary), result, []);
finally
__Message.UnsetAttributes(__TransportChannel);
__Message.FreeStream;
end
end;
{ CosrvAlbaranesProveedor } { CosrvAlbaranesProveedor }
class function CosrvAlbaranesProveedor.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvAlbaranesProveedor; class function CosrvAlbaranesProveedor.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvAlbaranesProveedor;
@ -1658,30 +1796,11 @@ begin
result := TsrvAlbaranesProveedor_Proxy.Create(aMessage, aTransportChannel); result := TsrvAlbaranesProveedor_Proxy.Create(aMessage, aTransportChannel);
end; end;
{ TsrvAlbaranesProveedor_Proxy }
function TsrvAlbaranesProveedor_Proxy.__GetInterfaceName:string; function TsrvAlbaranesProveedor_Proxy.__GetInterfaceName:string;
begin begin
result := 'srvAlbaranesProveedor'; result := 'srvAlbaranesProveedor';
end; end;
function TsrvAlbaranesProveedor_Proxy.GenerateReport(const ID: String): Binary;
begin
try
result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateReport');
__Message.Write('ID', TypeInfo(String), ID, []);
__Message.Finalize;
__TransportChannel.Dispatch(__Message);
__Message.Read('Result', TypeInfo(Binary), result, []);
finally
__Message.UnsetAttributes(__TransportChannel);
__Message.FreeStream;
end
end;
{ CosrvReferencias } { CosrvReferencias }
class function CosrvReferencias.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvReferencias; class function CosrvReferencias.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvReferencias;
@ -1817,6 +1936,7 @@ end;
initialization initialization
RegisterROClass(TRdxLoginInfo); RegisterROClass(TRdxLoginInfo);
RegisterROClass(TRdxEmpresasArray); RegisterROClass(TRdxEmpresasArray);
RegisterROClass(TIntegerArray);
RegisterProxyClass(IsrvContactos_IID, TsrvContactos_Proxy); RegisterProxyClass(IsrvContactos_IID, TsrvContactos_Proxy);
RegisterProxyClass(IsrvLogin_IID, TsrvLogin_Proxy); RegisterProxyClass(IsrvLogin_IID, TsrvLogin_Proxy);
RegisterProxyClass(IsrvInventario_IID, TsrvInventario_Proxy); RegisterProxyClass(IsrvInventario_IID, TsrvInventario_Proxy);
@ -1849,6 +1969,7 @@ initialization
finalization finalization
UnregisterROClass(TRdxLoginInfo); UnregisterROClass(TRdxLoginInfo);
UnregisterROClass(TRdxEmpresasArray); UnregisterROClass(TRdxEmpresasArray);
UnregisterROClass(TIntegerArray);
UnregisterProxyClass(IsrvContactos_IID); UnregisterProxyClass(IsrvContactos_IID);
UnregisterProxyClass(IsrvLogin_IID); UnregisterProxyClass(IsrvLogin_IID);
UnregisterProxyClass(IsrvInventario_IID); UnregisterProxyClass(IsrvInventario_IID);

View File

@ -24,8 +24,8 @@ type
private private
protected protected
published published
procedure Invoke_GenerateFichaEmpleadoReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure Invoke_GenerarInformeFichaEmpleado(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_GenerateEtiquetasReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure Invoke_GenerarInformeEtiquetas(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_DarListaDescripcionesProveedores(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure Invoke_DarListaDescripcionesProveedores(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_DarListaContratosEmpleados(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure Invoke_DarListaContratosEmpleados(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
end; end;
@ -105,43 +105,40 @@ type
private private
protected protected
published published
procedure Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
end; end;
TsrvRecibosProveedor_Invoker = class(TDataAbstractService_Invoker) TsrvRecibosProveedor_Invoker = class(TDataAbstractService_Invoker)
private private
protected protected
published published
procedure Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
end; end;
TsrvRemesasCliente_Invoker = class(TDataAbstractService_Invoker) TsrvRemesasCliente_Invoker = class(TDataAbstractService_Invoker)
private private
protected protected
published published
procedure Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
end; end;
TsrvRemesasProveedor_Invoker = class(TDataAbstractService_Invoker) TsrvRemesasProveedor_Invoker = class(TDataAbstractService_Invoker)
private private
protected protected
published published
procedure Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
end; end;
TsrvFacturasCliente_Invoker = class(TDataAbstractService_Invoker) TsrvFacturasCliente_Invoker = class(TDataAbstractService_Invoker)
private private
protected protected
published published
procedure Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_GenerateReportEnWord(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);
end; end;
TsrvFacturasProveedor_Invoker = class(TDataAbstractService_Invoker) TsrvFacturasProveedor_Invoker = class(TDataAbstractService_Invoker)
private private
protected protected
published published
procedure Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
end; end;
TsrvPresupuestosCliente_Invoker = class(TDataAbstractService_Invoker) TsrvPresupuestosCliente_Invoker = class(TDataAbstractService_Invoker)
@ -158,24 +155,25 @@ type
private private
protected protected
published published
procedure Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_GenerateReportEnWord(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);
end; end;
TsrvAlbaranesCliente_Invoker = class(TDataAbstractService_Invoker) TsrvAlbaranesCliente_Invoker = class(TDataAbstractService_Invoker)
private private
protected protected
published published
procedure Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_GenerateEtiquetas(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure Invoke_GenerarInformeEtiquetas(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_GenerateReportEnWord(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);
end; end;
TsrvAlbaranesProveedor_Invoker = class(TDataAbstractService_Invoker) TsrvAlbaranesProveedor_Invoker = class(TDataAbstractService_Invoker)
private private
protected protected
published published
procedure Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
end; end;
TsrvReferencias_Invoker = class(TDataAbstractService_Invoker) TsrvReferencias_Invoker = class(TDataAbstractService_Invoker)
@ -219,20 +217,21 @@ uses
{ TsrvContactos_Invoker } { TsrvContactos_Invoker }
procedure TsrvContactos_Invoker.Invoke_GenerateFichaEmpleadoReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure TsrvContactos_Invoker.Invoke_GenerarInformeFichaEmpleado(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateFichaEmpleadoReport(const EmpleadoID: String): Binary; } { function GenerarInformeFichaEmpleado(const ListaID: TIntegerArray): Binary; }
var var
EmpleadoID: String; ListaID: FactuGES_Intf.TIntegerArray;
lResult: Binary; lResult: Binary;
__lObjectDisposer: TROObjectDisposer; __lObjectDisposer: TROObjectDisposer;
begin begin
ListaID := nil;
lResult := nil; lResult := nil;
try try
__Message.Read('EmpleadoID', TypeInfo(String), EmpleadoID, []); __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
lResult := (__Instance as IsrvContactos).GenerateFichaEmpleadoReport(EmpleadoID); lResult := (__Instance as IsrvContactos).GenerarInformeFichaEmpleado(ListaID);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContactos', 'GenerateFichaEmpleadoReportResponse'); __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContactos', 'GenerarInformeFichaEmpleadoResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []); __Message.Write('Result', TypeInfo(Binary), lResult, []);
__Message.Finalize; __Message.Finalize;
__Message.UnsetAttributes(__Transport); __Message.UnsetAttributes(__Transport);
@ -240,6 +239,7 @@ begin
finally finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance); __lObjectDisposer := TROObjectDisposer.Create(__Instance);
try try
__lObjectDisposer.Add(ListaID);
__lObjectDisposer.Add(lResult); __lObjectDisposer.Add(lResult);
finally finally
__lObjectDisposer.Free(); __lObjectDisposer.Free();
@ -247,20 +247,21 @@ begin
end; end;
end; end;
procedure TsrvContactos_Invoker.Invoke_GenerateEtiquetasReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure TsrvContactos_Invoker.Invoke_GenerarInformeEtiquetas(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateEtiquetasReport(const ContactosID: String): Binary; } { function GenerarInformeEtiquetas(const ListaID: TIntegerArray): Binary; }
var var
ContactosID: String; ListaID: FactuGES_Intf.TIntegerArray;
lResult: Binary; lResult: Binary;
__lObjectDisposer: TROObjectDisposer; __lObjectDisposer: TROObjectDisposer;
begin begin
ListaID := nil;
lResult := nil; lResult := nil;
try try
__Message.Read('ContactosID', TypeInfo(String), ContactosID, []); __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
lResult := (__Instance as IsrvContactos).GenerateEtiquetasReport(ContactosID); lResult := (__Instance as IsrvContactos).GenerarInformeEtiquetas(ListaID);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContactos', 'GenerateEtiquetasReportResponse'); __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContactos', 'GenerarInformeEtiquetasResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []); __Message.Write('Result', TypeInfo(Binary), lResult, []);
__Message.Finalize; __Message.Finalize;
__Message.UnsetAttributes(__Transport); __Message.UnsetAttributes(__Transport);
@ -268,6 +269,7 @@ begin
finally finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance); __lObjectDisposer := TROObjectDisposer.Create(__Instance);
try try
__lObjectDisposer.Add(ListaID);
__lObjectDisposer.Add(lResult); __lObjectDisposer.Add(lResult);
finally finally
__lObjectDisposer.Free(); __lObjectDisposer.Free();
@ -429,110 +431,21 @@ end;
{ TsrvRecibosCliente_Invoker } { TsrvRecibosCliente_Invoker }
procedure TsrvRecibosCliente_Invoker.Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure TsrvRecibosCliente_Invoker.Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReport(const ID: String): Binary; } { function GenerarInforme(const ListaID: TIntegerArray): Binary; }
var var
ID: String; ListaID: FactuGES_Intf.TIntegerArray;
lResult: Binary; lResult: Binary;
__lObjectDisposer: TROObjectDisposer; __lObjectDisposer: TROObjectDisposer;
begin begin
ListaID := nil;
lResult := nil; lResult := nil;
try try
__Message.Read('ID', TypeInfo(String), ID, []); __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
lResult := (__Instance as IsrvRecibosCliente).GenerateReport(ID); lResult := (__Instance as IsrvRecibosCliente).GenerarInforme(ListaID);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvRecibosCliente', 'GenerateReportResponse'); __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvRecibosCliente', 'GenerarInformeResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []);
__Message.Finalize;
__Message.UnsetAttributes(__Transport);
finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
try
__lObjectDisposer.Add(lResult);
finally
__lObjectDisposer.Free();
end;
end;
end;
{ TsrvRecibosProveedor_Invoker }
procedure TsrvRecibosProveedor_Invoker.Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReport(const ID: Integer): Binary; }
var
ID: Integer;
lResult: Binary;
__lObjectDisposer: TROObjectDisposer;
begin
lResult := nil;
try
__Message.Read('ID', TypeInfo(Integer), ID, []);
lResult := (__Instance as IsrvRecibosProveedor).GenerateReport(ID);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvRecibosProveedor', 'GenerateReportResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []);
__Message.Finalize;
__Message.UnsetAttributes(__Transport);
finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
try
__lObjectDisposer.Add(lResult);
finally
__lObjectDisposer.Free();
end;
end;
end;
{ TsrvRemesasCliente_Invoker }
procedure TsrvRemesasCliente_Invoker.Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReport(const ID: String): Binary; }
var
ID: String;
lResult: Binary;
__lObjectDisposer: TROObjectDisposer;
begin
lResult := nil;
try
__Message.Read('ID', TypeInfo(String), ID, []);
lResult := (__Instance as IsrvRemesasCliente).GenerateReport(ID);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvRemesasCliente', 'GenerateReportResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []);
__Message.Finalize;
__Message.UnsetAttributes(__Transport);
finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
try
__lObjectDisposer.Add(lResult);
finally
__lObjectDisposer.Free();
end;
end;
end;
{ TsrvRemesasProveedor_Invoker }
procedure TsrvRemesasProveedor_Invoker.Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReport(const ID: String): Binary; }
var
ID: String;
lResult: Binary;
__lObjectDisposer: TROObjectDisposer;
begin
lResult := nil;
try
__Message.Read('ID', TypeInfo(String), ID, []);
lResult := (__Instance as IsrvRemesasProveedor).GenerateReport(ID);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvRemesasProveedor', 'GenerateReportResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []); __Message.Write('Result', TypeInfo(Binary), lResult, []);
__Message.Finalize; __Message.Finalize;
__Message.UnsetAttributes(__Transport); __Message.UnsetAttributes(__Transport);
@ -540,6 +453,7 @@ begin
finally finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance); __lObjectDisposer := TROObjectDisposer.Create(__Instance);
try try
__lObjectDisposer.Add(ListaID);
__lObjectDisposer.Add(lResult); __lObjectDisposer.Add(lResult);
finally finally
__lObjectDisposer.Free(); __lObjectDisposer.Free();
@ -549,20 +463,21 @@ end;
{ TsrvFacturasCliente_Invoker } { TsrvFacturasCliente_Invoker }
procedure TsrvFacturasCliente_Invoker.Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure TsrvFacturasCliente_Invoker.Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReport(const FacturaID: String): Binary; } { function GenerarInforme(const ListaID: TIntegerArray): Binary; }
var var
FacturaID: String; ListaID: FactuGES_Intf.TIntegerArray;
lResult: Binary; lResult: Binary;
__lObjectDisposer: TROObjectDisposer; __lObjectDisposer: TROObjectDisposer;
begin begin
ListaID := nil;
lResult := nil; lResult := nil;
try try
__Message.Read('FacturaID', TypeInfo(String), FacturaID, []); __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
lResult := (__Instance as IsrvFacturasCliente).GenerateReport(FacturaID); lResult := (__Instance as IsrvFacturasCliente).GenerarInforme(ListaID);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvFacturasCliente', 'GenerateReportResponse'); __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvFacturasCliente', 'GenerarInformeResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []); __Message.Write('Result', TypeInfo(Binary), lResult, []);
__Message.Finalize; __Message.Finalize;
__Message.UnsetAttributes(__Transport); __Message.UnsetAttributes(__Transport);
@ -570,6 +485,7 @@ begin
finally finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance); __lObjectDisposer := TROObjectDisposer.Create(__Instance);
try try
__lObjectDisposer.Add(ListaID);
__lObjectDisposer.Add(lResult); __lObjectDisposer.Add(lResult);
finally finally
__lObjectDisposer.Free(); __lObjectDisposer.Free();
@ -577,8 +493,8 @@ begin
end; end;
end; end;
procedure TsrvFacturasCliente_Invoker.Invoke_GenerateReportEnWord(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure TsrvFacturasCliente_Invoker.Invoke_GenerarInformeEnWord(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReportEnWord(const ID: Integer): Binary; } { function GenerarInformeEnWord(const ID: Integer): Binary; }
var var
ID: Integer; ID: Integer;
lResult: Binary; lResult: Binary;
@ -588,9 +504,9 @@ begin
try try
__Message.Read('ID', TypeInfo(Integer), ID, []); __Message.Read('ID', TypeInfo(Integer), ID, []);
lResult := (__Instance as IsrvFacturasCliente).GenerateReportEnWord(ID); lResult := (__Instance as IsrvFacturasCliente).GenerarInformeEnWord(ID);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvFacturasCliente', 'GenerateReportEnWordResponse'); __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvFacturasCliente', 'GenerarInformeEnWordResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []); __Message.Write('Result', TypeInfo(Binary), lResult, []);
__Message.Finalize; __Message.Finalize;
__Message.UnsetAttributes(__Transport); __Message.UnsetAttributes(__Transport);
@ -605,22 +521,21 @@ begin
end; end;
end; end;
{ TsrvFacturasProveedor_Invoker } procedure TsrvFacturasCliente_Invoker.Invoke_GenerarInformeEnPDF(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary; }
procedure TsrvFacturasProveedor_Invoker.Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReport(const FacturaID: String): Binary; }
var var
FacturaID: String; ListaID: FactuGES_Intf.TIntegerArray;
lResult: Binary; lResult: Binary;
__lObjectDisposer: TROObjectDisposer; __lObjectDisposer: TROObjectDisposer;
begin begin
ListaID := nil;
lResult := nil; lResult := nil;
try try
__Message.Read('FacturaID', TypeInfo(String), FacturaID, []); __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
lResult := (__Instance as IsrvFacturasProveedor).GenerateReport(FacturaID); lResult := (__Instance as IsrvFacturasCliente).GenerarInformeEnPDF(ListaID);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvFacturasProveedor', 'GenerateReportResponse'); __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvFacturasCliente', 'GenerarInformeEnPDFResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []); __Message.Write('Result', TypeInfo(Binary), lResult, []);
__Message.Finalize; __Message.Finalize;
__Message.UnsetAttributes(__Transport); __Message.UnsetAttributes(__Transport);
@ -628,6 +543,7 @@ begin
finally finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance); __lObjectDisposer := TROObjectDisposer.Create(__Instance);
try try
__lObjectDisposer.Add(ListaID);
__lObjectDisposer.Add(lResult); __lObjectDisposer.Add(lResult);
finally finally
__lObjectDisposer.Free(); __lObjectDisposer.Free();
@ -638,15 +554,16 @@ end;
{ TsrvPresupuestosCliente_Invoker } { TsrvPresupuestosCliente_Invoker }
procedure TsrvPresupuestosCliente_Invoker.Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure TsrvPresupuestosCliente_Invoker.Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInforme(const ListaID: String): Binary; } { function GenerarInforme(const ListaID: TIntegerArray): Binary; }
var var
ListaID: String; ListaID: FactuGES_Intf.TIntegerArray;
lResult: Binary; lResult: Binary;
__lObjectDisposer: TROObjectDisposer; __lObjectDisposer: TROObjectDisposer;
begin begin
ListaID := nil;
lResult := nil; lResult := nil;
try try
__Message.Read('ListaID', TypeInfo(String), ListaID, []); __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
lResult := (__Instance as IsrvPresupuestosCliente).GenerarInforme(ListaID); lResult := (__Instance as IsrvPresupuestosCliente).GenerarInforme(ListaID);
@ -658,6 +575,7 @@ begin
finally finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance); __lObjectDisposer := TROObjectDisposer.Create(__Instance);
try try
__lObjectDisposer.Add(ListaID);
__lObjectDisposer.Add(lResult); __lObjectDisposer.Add(lResult);
finally finally
__lObjectDisposer.Free(); __lObjectDisposer.Free();
@ -722,15 +640,16 @@ begin
end; end;
procedure TsrvPresupuestosCliente_Invoker.Invoke_GenerarInformeEnPDF(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure TsrvPresupuestosCliente_Invoker.Invoke_GenerarInformeEnPDF(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeEnPDF(const ListaID: String): Binary; } { function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary; }
var var
ListaID: String; ListaID: FactuGES_Intf.TIntegerArray;
lResult: Binary; lResult: Binary;
__lObjectDisposer: TROObjectDisposer; __lObjectDisposer: TROObjectDisposer;
begin begin
ListaID := nil;
lResult := nil; lResult := nil;
try try
__Message.Read('ListaID', TypeInfo(String), ListaID, []); __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
lResult := (__Instance as IsrvPresupuestosCliente).GenerarInformeEnPDF(ListaID); lResult := (__Instance as IsrvPresupuestosCliente).GenerarInformeEnPDF(ListaID);
@ -742,6 +661,7 @@ begin
finally finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance); __lObjectDisposer := TROObjectDisposer.Create(__Instance);
try try
__lObjectDisposer.Add(ListaID);
__lObjectDisposer.Add(lResult); __lObjectDisposer.Add(lResult);
finally finally
__lObjectDisposer.Free(); __lObjectDisposer.Free();
@ -751,20 +671,21 @@ end;
{ TsrvPedidosProveedor_Invoker } { TsrvPedidosProveedor_Invoker }
procedure TsrvPedidosProveedor_Invoker.Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure TsrvPedidosProveedor_Invoker.Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReport(const ID: String): Binary; } { function GenerarInforme(const ListaID: TIntegerArray): Binary; }
var var
ID: String; ListaID: FactuGES_Intf.TIntegerArray;
lResult: Binary; lResult: Binary;
__lObjectDisposer: TROObjectDisposer; __lObjectDisposer: TROObjectDisposer;
begin begin
ListaID := nil;
lResult := nil; lResult := nil;
try try
__Message.Read('ID', TypeInfo(String), ID, []); __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
lResult := (__Instance as IsrvPedidosProveedor).GenerateReport(ID); lResult := (__Instance as IsrvPedidosProveedor).GenerarInforme(ListaID);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvPedidosProveedor', 'GenerateReportResponse'); __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvPedidosProveedor', 'GenerarInformeResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []); __Message.Write('Result', TypeInfo(Binary), lResult, []);
__Message.Finalize; __Message.Finalize;
__Message.UnsetAttributes(__Transport); __Message.UnsetAttributes(__Transport);
@ -772,6 +693,7 @@ begin
finally finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance); __lObjectDisposer := TROObjectDisposer.Create(__Instance);
try try
__lObjectDisposer.Add(ListaID);
__lObjectDisposer.Add(lResult); __lObjectDisposer.Add(lResult);
finally finally
__lObjectDisposer.Free(); __lObjectDisposer.Free();
@ -779,8 +701,8 @@ begin
end; end;
end; end;
procedure TsrvPedidosProveedor_Invoker.Invoke_GenerateReportEnWord(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure TsrvPedidosProveedor_Invoker.Invoke_GenerarInformeEnWord(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReportEnWord(const ID: Integer): Binary; } { function GenerarInformeEnWord(const ID: Integer): Binary; }
var var
ID: Integer; ID: Integer;
lResult: Binary; lResult: Binary;
@ -790,9 +712,9 @@ begin
try try
__Message.Read('ID', TypeInfo(Integer), ID, []); __Message.Read('ID', TypeInfo(Integer), ID, []);
lResult := (__Instance as IsrvPedidosProveedor).GenerateReportEnWord(ID); lResult := (__Instance as IsrvPedidosProveedor).GenerarInformeEnWord(ID);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvPedidosProveedor', 'GenerateReportEnWordResponse'); __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvPedidosProveedor', 'GenerarInformeEnWordResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []); __Message.Write('Result', TypeInfo(Binary), lResult, []);
__Message.Finalize; __Message.Finalize;
__Message.UnsetAttributes(__Transport); __Message.UnsetAttributes(__Transport);
@ -807,22 +729,53 @@ begin
end; end;
end; end;
procedure TsrvPedidosProveedor_Invoker.Invoke_GenerarInformeEnPDF(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary; }
var
ListaID: FactuGES_Intf.TIntegerArray;
lResult: Binary;
__lObjectDisposer: TROObjectDisposer;
begin
ListaID := nil;
lResult := nil;
try
__Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
lResult := (__Instance as IsrvPedidosProveedor).GenerarInformeEnPDF(ListaID);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvPedidosProveedor', 'GenerarInformeEnPDFResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []);
__Message.Finalize;
__Message.UnsetAttributes(__Transport);
finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
try
__lObjectDisposer.Add(ListaID);
__lObjectDisposer.Add(lResult);
finally
__lObjectDisposer.Free();
end;
end;
end;
{ TsrvAlbaranesCliente_Invoker } { TsrvAlbaranesCliente_Invoker }
procedure TsrvAlbaranesCliente_Invoker.Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure TsrvAlbaranesCliente_Invoker.Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReport(const ID: String): Binary; } { function GenerarInforme(const ListaID: TIntegerArray): Binary; }
var var
ID: String; ListaID: FactuGES_Intf.TIntegerArray;
lResult: Binary; lResult: Binary;
__lObjectDisposer: TROObjectDisposer; __lObjectDisposer: TROObjectDisposer;
begin begin
ListaID := nil;
lResult := nil; lResult := nil;
try try
__Message.Read('ID', TypeInfo(String), ID, []); __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
lResult := (__Instance as IsrvAlbaranesCliente).GenerateReport(ID); lResult := (__Instance as IsrvAlbaranesCliente).GenerarInforme(ListaID);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvAlbaranesCliente', 'GenerateReportResponse'); __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvAlbaranesCliente', 'GenerarInformeResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []); __Message.Write('Result', TypeInfo(Binary), lResult, []);
__Message.Finalize; __Message.Finalize;
__Message.UnsetAttributes(__Transport); __Message.UnsetAttributes(__Transport);
@ -830,6 +783,7 @@ begin
finally finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance); __lObjectDisposer := TROObjectDisposer.Create(__Instance);
try try
__lObjectDisposer.Add(ListaID);
__lObjectDisposer.Add(lResult); __lObjectDisposer.Add(lResult);
finally finally
__lObjectDisposer.Free(); __lObjectDisposer.Free();
@ -837,8 +791,8 @@ begin
end; end;
end; end;
procedure TsrvAlbaranesCliente_Invoker.Invoke_GenerateEtiquetas(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure TsrvAlbaranesCliente_Invoker.Invoke_GenerarInformeEtiquetas(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary; } { function GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary; }
var var
ID: Integer; ID: Integer;
withRefCliente: Boolean; withRefCliente: Boolean;
@ -850,9 +804,9 @@ begin
__Message.Read('ID', TypeInfo(Integer), ID, []); __Message.Read('ID', TypeInfo(Integer), ID, []);
__Message.Read('withRefCliente', TypeInfo(Boolean), withRefCliente, []); __Message.Read('withRefCliente', TypeInfo(Boolean), withRefCliente, []);
lResult := (__Instance as IsrvAlbaranesCliente).GenerateEtiquetas(ID, withRefCliente); lResult := (__Instance as IsrvAlbaranesCliente).GenerarInformeEtiquetas(ID, withRefCliente);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvAlbaranesCliente', 'GenerateEtiquetasResponse'); __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvAlbaranesCliente', 'GenerarInformeEtiquetasResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []); __Message.Write('Result', TypeInfo(Binary), lResult, []);
__Message.Finalize; __Message.Finalize;
__Message.UnsetAttributes(__Transport); __Message.UnsetAttributes(__Transport);
@ -867,8 +821,8 @@ begin
end; end;
end; end;
procedure TsrvAlbaranesCliente_Invoker.Invoke_GenerateReportEnWord(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure TsrvAlbaranesCliente_Invoker.Invoke_GenerarInformeEnWord(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReportEnWord(const ID: Integer): Binary; } { function GenerarInformeEnWord(const ID: Integer): Binary; }
var var
ID: Integer; ID: Integer;
lResult: Binary; lResult: Binary;
@ -878,9 +832,9 @@ begin
try try
__Message.Read('ID', TypeInfo(Integer), ID, []); __Message.Read('ID', TypeInfo(Integer), ID, []);
lResult := (__Instance as IsrvAlbaranesCliente).GenerateReportEnWord(ID); lResult := (__Instance as IsrvAlbaranesCliente).GenerarInformeEnWord(ID);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvAlbaranesCliente', 'GenerateReportEnWordResponse'); __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvAlbaranesCliente', 'GenerarInformeEnWordResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []); __Message.Write('Result', TypeInfo(Binary), lResult, []);
__Message.Finalize; __Message.Finalize;
__Message.UnsetAttributes(__Transport); __Message.UnsetAttributes(__Transport);
@ -895,22 +849,21 @@ begin
end; end;
end; end;
{ TsrvAlbaranesProveedor_Invoker } procedure TsrvAlbaranesCliente_Invoker.Invoke_GenerarInformeEnPDF(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary; }
procedure TsrvAlbaranesProveedor_Invoker.Invoke_GenerateReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerateReport(const ID: String): Binary; }
var var
ID: String; ListaID: FactuGES_Intf.TIntegerArray;
lResult: Binary; lResult: Binary;
__lObjectDisposer: TROObjectDisposer; __lObjectDisposer: TROObjectDisposer;
begin begin
ListaID := nil;
lResult := nil; lResult := nil;
try try
__Message.Read('ID', TypeInfo(String), ID, []); __Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
lResult := (__Instance as IsrvAlbaranesProveedor).GenerateReport(ID); lResult := (__Instance as IsrvAlbaranesCliente).GenerarInformeEnPDF(ListaID);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvAlbaranesProveedor', 'GenerateReportResponse'); __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvAlbaranesCliente', 'GenerarInformeEnPDFResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []); __Message.Write('Result', TypeInfo(Binary), lResult, []);
__Message.Finalize; __Message.Finalize;
__Message.UnsetAttributes(__Transport); __Message.UnsetAttributes(__Transport);
@ -918,6 +871,7 @@ begin
finally finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance); __lObjectDisposer := TROObjectDisposer.Create(__Instance);
try try
__lObjectDisposer.Add(ListaID);
__lObjectDisposer.Add(lResult); __lObjectDisposer.Add(lResult);
finally finally
__lObjectDisposer.Free(); __lObjectDisposer.Free();

Binary file not shown.

Binary file not shown.

View File

@ -99,7 +99,6 @@ uses
uBizObrasServer in '..\Modulos\Obras\Model\uBizObrasServer.pas', uBizObrasServer in '..\Modulos\Obras\Model\uBizObrasServer.pas',
schObrasClient_Intf in '..\Modulos\Obras\Model\schObrasClient_Intf.pas', schObrasClient_Intf in '..\Modulos\Obras\Model\schObrasClient_Intf.pas',
schObrasServer_Intf in '..\Modulos\Obras\Model\schObrasServer_Intf.pas', schObrasServer_Intf in '..\Modulos\Obras\Model\schObrasServer_Intf.pas',
schUsuariosClient_Intf in '..\ApplicationBase\Usuarios\Model\schUsuariosClient_Intf.pas',
schUsuariosServer_Intf in '..\ApplicationBase\Usuarios\Model\schUsuariosServer_Intf.pas', schUsuariosServer_Intf in '..\ApplicationBase\Usuarios\Model\schUsuariosServer_Intf.pas',
uRptRecibosCliente_Server in '..\Modulos\Recibos de cliente\Reports\uRptRecibosCliente_Server.pas' {RptRecibosCliente: TDataModule}, uRptRecibosCliente_Server in '..\Modulos\Recibos de cliente\Reports\uRptRecibosCliente_Server.pas' {RptRecibosCliente: TDataModule},
srvProvinciasPoblaciones_Impl in '..\ApplicationBase\ProvinciasPoblaciones\Servidor\srvProvinciasPoblaciones_Impl.pas', srvProvinciasPoblaciones_Impl in '..\ApplicationBase\ProvinciasPoblaciones\Servidor\srvProvinciasPoblaciones_Impl.pas',
@ -128,7 +127,8 @@ uses
schPedidosProveedorClient_Intf in '..\Modulos\Pedidos a proveedor\Model\schPedidosProveedorClient_Intf.pas', schPedidosProveedorClient_Intf in '..\Modulos\Pedidos a proveedor\Model\schPedidosProveedorClient_Intf.pas',
schPedidosProveedorServer_Intf in '..\Modulos\Pedidos a proveedor\Model\schPedidosProveedorServer_Intf.pas', schPedidosProveedorServer_Intf in '..\Modulos\Pedidos a proveedor\Model\schPedidosProveedorServer_Intf.pas',
schFacturasProveedorClient_Intf in '..\Modulos\Facturas de proveedor\Model\schFacturasProveedorClient_Intf.pas', schFacturasProveedorClient_Intf in '..\Modulos\Facturas de proveedor\Model\schFacturasProveedorClient_Intf.pas',
schFacturasProveedorServer_Intf in '..\Modulos\Facturas de proveedor\Model\schFacturasProveedorServer_Intf.pas'; schFacturasProveedorServer_Intf in '..\Modulos\Facturas de proveedor\Model\schFacturasProveedorServer_Intf.pas',
schUsuariosClient_Intf in '..\ApplicationBase\Usuarios\Model\schUsuariosClient_Intf.pas';
{$R *.res} {$R *.res}
{$R ..\Servicios\RODLFile.res} {$R ..\Servicios\RODLFile.res}

View File

@ -1,290 +1,290 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup> <PropertyGroup>
<ProjectGuid>{ebdcd25d-40d7-4146-91ec-a0ea4aa1dcd1}</ProjectGuid> <ProjectGuid>{ebdcd25d-40d7-4146-91ec-a0ea4aa1dcd1}</ProjectGuid>
<MainSource>FactuGES_Server.dpr</MainSource> <MainSource>FactuGES_Server.dpr</MainSource>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler> <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
<DCC_DependencyCheckOutputName>..\..\Output\Debug\Servidor\FactuGES_Server.exe</DCC_DependencyCheckOutputName> <DCC_DependencyCheckOutputName>..\..\Output\Debug\Servidor\FactuGES_Server.exe</DCC_DependencyCheckOutputName>
<DCC_UsePackage>vcl;rtl;vclx;vclactnband;dbrtl;vcldb;vcldbx;bdertl;dsnap;dsnapcon;teeUI;teedb;tee;adortl;vclib;ibxpress;dbxcds;dbexpress;DbxCommonDriver;IndyCore;IndySystem;IndyProtocols;VclSmp;vclie;webdsnap;xmlrtl;inet;inetdbbde;inetdbxpress;RemObjects_BPDX_D11;RemObjects_RODX_D11;RemObjects_Indy_D11;RemObjects_Synapse_D11;RemObjects_WebBroker_D11;DataAbstract_Core_D11;DataAbstract_DBXDriver_D11;DataAbstract_IDE_D11;DataAbstract_Scripting_D11;DataAbstract_SDACDriver_D11;sdac105;dac105;DataAbstract_SQLiteDriver_D11;cxEditorsD10;cxLibraryD10;dxThemeD10;cxDataD10;cxExtEditorsD10;cxGridD10;cxPageControlD10;cxSchedulerD10;cxTreeListD10;cxVerticalGridD10;dxBarD10;dxComnD10;dxBarDBNavD10;dxBarExtDBItemsD10;dxBarExtItemsD10;dxDockingD10;dxLayoutControlD10;dxNavBarD10;dxPSCoreD10;dxsbD10;dxPScxCommonD10;dxPSLnksD10;vclshlctrls;dxPScxExtCommonD10;dxPScxGridLnkD10;dxPScxPCProdD10;dxPScxScheduler2LnkD10;dxPScxTLLnkD10;dxPSdxLCLnkD10;dxPsPrVwAdvD10;pckMD5;pckUCDataConnector;pckUserControl_RT;PluginSDK_D10R;PNG_D10;PngComponentsD10;tb2k_d10;tbx_d10;JclVcl;Jcl;JvXPCtrlsD11R;JvCoreD11R;JvSystemD11R;JvStdCtrlsD11R;JvAppFrmD11R;JvBandsD11R;JvDBD11R;JvDlgsD11R;JvBDED11R;JvCmpD11R;JvCryptD11R;JvCtrlsD11R;JvCustomD11R;JvDockingD11R;JvDotNetCtrlsD11R;JvEDID11R;JvGlobusD11R;JvHMID11R;JvInterpreterD11R;JvJansD11R;JvManagedThreadsD11R;JvMMD11R;JvNetD11R;JvPageCompsD11R;JvPluginD11R;JvPrintPreviewD11R;JvRuntimeDesignD11R;JvTimeFrameworkD11R;JvUIBD11R;JvValidatorsD11R;JvWizardD11R;pckUCADOConn;pckUCBDEConn;pckUCIBXConn;pckUCMidasConn;cxIntlPrintSys3D10;cxExportD10;cxIntl5D10;GUISDK_D11;ccpackD11;JSDialog100;fsTee11;fs11;frx11;frxADO11;frxBDE11;frxDB11;frxDBX11;frxe11;frxIBX11;frxTee11;fsADO11;fsBDE11;fsDB11;fsIBX11;websnap;soaprtl;IntrawebDB_90_100;Intraweb_90_100</DCC_UsePackage> <DCC_UsePackage>vcl;rtl;vclx;vclactnband;dbrtl;vcldb;vcldbx;bdertl;dsnap;dsnapcon;teeUI;teedb;tee;adortl;vclib;ibxpress;dbxcds;dbexpress;DbxCommonDriver;IndyCore;IndySystem;IndyProtocols;VclSmp;vclie;webdsnap;xmlrtl;inet;inetdbbde;inetdbxpress;RemObjects_BPDX_D11;RemObjects_RODX_D11;RemObjects_Indy_D11;RemObjects_Synapse_D11;RemObjects_WebBroker_D11;DataAbstract_Core_D11;DataAbstract_DBXDriver_D11;DataAbstract_IDE_D11;DataAbstract_Scripting_D11;DataAbstract_SDACDriver_D11;sdac105;dac105;DataAbstract_SQLiteDriver_D11;cxEditorsD10;cxLibraryD10;dxThemeD10;cxDataD10;cxExtEditorsD10;cxGridD10;cxPageControlD10;cxSchedulerD10;cxTreeListD10;cxVerticalGridD10;dxBarD10;dxComnD10;dxBarDBNavD10;dxBarExtDBItemsD10;dxBarExtItemsD10;dxDockingD10;dxLayoutControlD10;dxNavBarD10;dxPSCoreD10;dxsbD10;dxPScxCommonD10;dxPSLnksD10;vclshlctrls;dxPScxExtCommonD10;dxPScxGridLnkD10;dxPScxPCProdD10;dxPScxScheduler2LnkD10;dxPScxTLLnkD10;dxPSdxLCLnkD10;dxPsPrVwAdvD10;pckMD5;pckUCDataConnector;pckUserControl_RT;PluginSDK_D10R;PNG_D10;PngComponentsD10;tb2k_d10;tbx_d10;JclVcl;Jcl;JvXPCtrlsD11R;JvCoreD11R;JvSystemD11R;JvStdCtrlsD11R;JvAppFrmD11R;JvBandsD11R;JvDBD11R;JvDlgsD11R;JvBDED11R;JvCmpD11R;JvCryptD11R;JvCtrlsD11R;JvCustomD11R;JvDockingD11R;JvDotNetCtrlsD11R;JvEDID11R;JvGlobusD11R;JvHMID11R;JvInterpreterD11R;JvJansD11R;JvManagedThreadsD11R;JvMMD11R;JvNetD11R;JvPageCompsD11R;JvPluginD11R;JvPrintPreviewD11R;JvRuntimeDesignD11R;JvTimeFrameworkD11R;JvUIBD11R;JvValidatorsD11R;JvWizardD11R;pckUCADOConn;pckUCBDEConn;pckUCIBXConn;pckUCMidasConn;cxIntlPrintSys3D10;cxExportD10;cxIntl5D10;GUISDK_D11;ccpackD11;JSDialog100;fsTee11;fs11;frx11;frxADO11;frxBDE11;frxDB11;frxDBX11;frxe11;frxIBX11;frxTee11;fsADO11;fsBDE11;fsDB11;fsIBX11;websnap;soaprtl;IntrawebDB_90_100;Intraweb_90_100</DCC_UsePackage>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Version>7.0</Version> <Version>7.0</Version>
<DCC_DebugInformation>False</DCC_DebugInformation> <DCC_DebugInformation>False</DCC_DebugInformation>
<DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols> <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo> <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_MapFile>3</DCC_MapFile> <DCC_MapFile>3</DCC_MapFile>
<DCC_ExeOutput>..\..\Output\Release\Servidor</DCC_ExeOutput> <DCC_ExeOutput>..\..\Output\Release\Servidor</DCC_ExeOutput>
<DCC_Define>RELEASE</DCC_Define> <DCC_Define>RELEASE</DCC_Define>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Version>7.0</Version> <Version>7.0</Version>
<DCC_MapFile>3</DCC_MapFile> <DCC_MapFile>3</DCC_MapFile>
<DCC_ExeOutput>..\..\Output\Debug\Servidor</DCC_ExeOutput> <DCC_ExeOutput>..\..\Output\Debug\Servidor</DCC_ExeOutput>
<DCC_Define>DEBUG;</DCC_Define> <DCC_Define>DEBUG;</DCC_Define>
<DCC_GenerateStackFrames>True</DCC_GenerateStackFrames> <DCC_GenerateStackFrames>True</DCC_GenerateStackFrames>
<DCC_DebugInfoInExe>True</DCC_DebugInfoInExe> <DCC_DebugInfoInExe>True</DCC_DebugInfoInExe>
<DCC_DebugVN>True</DCC_DebugVN> <DCC_DebugVN>True</DCC_DebugVN>
<DCC_UnitSearchPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_UnitSearchPath> <DCC_UnitSearchPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_UnitSearchPath>
<DCC_ResourcePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_ResourcePath> <DCC_ResourcePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_ResourcePath>
<DCC_ObjPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_ObjPath> <DCC_ObjPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_ObjPath>
<DCC_IncludePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_IncludePath> <DCC_IncludePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_IncludePath>
</PropertyGroup> </PropertyGroup>
<ProjectExtensions> <ProjectExtensions>
<Borland.Personality>Delphi.Personality</Borland.Personality> <Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType/> <Borland.ProjectType />
<BorlandProject> <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">2</VersionInfo><VersionInfo Name="Release">4</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.2.4.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.2.4.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys><VersionInfoKeys Name="CompileDate">jueves, 21 de agosto de 2008 18:49</VersionInfoKeys></VersionInfoKeys><Excluded_Packages/><Source><Source Name="MainSource">FactuGES_Server.dpr</Source></Source></Delphi.Personality></BorlandProject></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">2</VersionInfo><VersionInfo Name="Release">4</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.2.4.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.2.4.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys><VersionInfoKeys Name="CompileDate">jueves, 21 de agosto de 2008 18:49</VersionInfoKeys></VersionInfoKeys><Excluded_Packages /><Source><Source Name="MainSource">FactuGES_Server.dpr</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
</ProjectExtensions> </ProjectExtensions>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets"/> <Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
<ItemGroup> <ItemGroup>
<DelphiCompile Include="FactuGES_Server.dpr"> <DelphiCompile Include="FactuGES_Server.dpr">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\ApplicationBase\Empresas\Model\schEmpresasClient_Intf.pas"/> <DCCReference Include="..\ApplicationBase\Empresas\Model\schEmpresasClient_Intf.pas" />
<DCCReference Include="..\ApplicationBase\Empresas\Model\schEmpresasServer_Intf.pas"/> <DCCReference Include="..\ApplicationBase\Empresas\Model\schEmpresasServer_Intf.pas" />
<DCCReference Include="..\ApplicationBase\Empresas\Model\uBizEmpresasServer.pas"/> <DCCReference Include="..\ApplicationBase\Empresas\Model\uBizEmpresasServer.pas" />
<DCCReference Include="..\ApplicationBase\Empresas\Servidor\srvEmpresas_Impl.pas"> <DCCReference Include="..\ApplicationBase\Empresas\Servidor\srvEmpresas_Impl.pas">
<Form>srvEmpresas</Form> <Form>srvEmpresas</Form>
<DesignClass>TDARemoteService</DesignClass> <DesignClass>TDARemoteService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\ApplicationBase\ProvinciasPoblaciones\Servidor\srvProvinciasPoblaciones_Impl.pas"/> <DCCReference Include="..\ApplicationBase\ProvinciasPoblaciones\Servidor\srvProvinciasPoblaciones_Impl.pas" />
<DCCReference Include="..\ApplicationBase\Usuarios\Model\schUsuariosClient_Intf.pas"/> <DCCReference Include="..\ApplicationBase\Usuarios\Model\schUsuariosClient_Intf.pas" />
<DCCReference Include="..\ApplicationBase\Usuarios\Model\schUsuariosServer_Intf.pas"/> <DCCReference Include="..\ApplicationBase\Usuarios\Model\schUsuariosServer_Intf.pas" />
<DCCReference Include="..\ApplicationBase\Usuarios\Servidor\srvUsuarios_Impl.pas"/> <DCCReference Include="..\ApplicationBase\Usuarios\Servidor\srvUsuarios_Impl.pas" />
<DCCReference Include="..\Base\schBase_Intf.pas"/> <DCCReference Include="..\Base\schBase_Intf.pas" />
<DCCReference Include="..\Base\Utiles\uSistemaFunc.pas"/> <DCCReference Include="..\Base\Utiles\uSistemaFunc.pas" />
<DCCReference Include="..\Base\Utiles\uStringsUtils.pas"/> <DCCReference Include="..\Base\Utiles\uStringsUtils.pas" />
<DCCReference Include="..\Modulos\Albaranes de cliente\Model\schAlbaranesClienteClient_Intf.pas"/> <DCCReference Include="..\Modulos\Albaranes de cliente\Model\schAlbaranesClienteClient_Intf.pas" />
<DCCReference Include="..\Modulos\Albaranes de cliente\Model\schAlbaranesClienteServer_Intf.pas"/> <DCCReference Include="..\Modulos\Albaranes de cliente\Model\schAlbaranesClienteServer_Intf.pas" />
<DCCReference Include="..\Modulos\Albaranes de cliente\Model\uBizAlbaranClienteServer.pas"/> <DCCReference Include="..\Modulos\Albaranes de cliente\Model\uBizAlbaranClienteServer.pas" />
<DCCReference Include="..\Modulos\Albaranes de cliente\Reports\uRptAlbaranesCliente_Server.pas"> <DCCReference Include="..\Modulos\Albaranes de cliente\Reports\uRptAlbaranesCliente_Server.pas">
<Form>RptAlbaranesCliente</Form> <Form>RptAlbaranesCliente</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Albaranes de cliente\Reports\uRptWordAlbaranCliente.pas"> <DCCReference Include="..\Modulos\Albaranes de cliente\Reports\uRptWordAlbaranCliente.pas">
<Form>RptWordAlbaranCliente</Form> <Form>RptWordAlbaranCliente</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Albaranes de cliente\Servidor\srvAlbaranesCliente_Impl.pas"> <DCCReference Include="..\Modulos\Albaranes de cliente\Servidor\srvAlbaranesCliente_Impl.pas">
<Form>srvAlbaranesCliente</Form> <Form>srvAlbaranesCliente</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Albaranes de proveedor\Model\schAlbaranesProveedorClient_Intf.pas"/> <DCCReference Include="..\Modulos\Albaranes de proveedor\Model\schAlbaranesProveedorClient_Intf.pas" />
<DCCReference Include="..\Modulos\Albaranes de proveedor\Model\schAlbaranesProveedorServer_Intf.pas"/> <DCCReference Include="..\Modulos\Albaranes de proveedor\Model\schAlbaranesProveedorServer_Intf.pas" />
<DCCReference Include="..\Modulos\Albaranes de proveedor\Model\uBizAlbaranProveedorServer.PAS"/> <DCCReference Include="..\Modulos\Albaranes de proveedor\Model\uBizAlbaranProveedorServer.PAS" />
<DCCReference Include="..\Modulos\Albaranes de proveedor\Servidor\srvAlbaranesProveedor_Impl.pas"> <DCCReference Include="..\Modulos\Albaranes de proveedor\Servidor\srvAlbaranesProveedor_Impl.pas">
<Form>srvAlbaranesProveedor</Form> <Form>srvAlbaranesProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Almacenes\Model\schAlmacenesClient_Intf.pas"/> <DCCReference Include="..\Modulos\Almacenes\Model\schAlmacenesClient_Intf.pas" />
<DCCReference Include="..\Modulos\Almacenes\Model\schAlmacenesServer_Intf.pas"/> <DCCReference Include="..\Modulos\Almacenes\Model\schAlmacenesServer_Intf.pas" />
<DCCReference Include="..\Modulos\Almacenes\Servidor\srvAlmacenes_Impl.pas"> <DCCReference Include="..\Modulos\Almacenes\Servidor\srvAlmacenes_Impl.pas">
<Form>srvAlmacenes</Form> <Form>srvAlmacenes</Form>
<DesignClass>TDARemoteService</DesignClass> <DesignClass>TDARemoteService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Articulos\Model\schArticulosClient_Intf.pas"/> <DCCReference Include="..\Modulos\Articulos\Model\schArticulosClient_Intf.pas" />
<DCCReference Include="..\Modulos\Articulos\Model\schArticulosServer_Intf.pas"/> <DCCReference Include="..\Modulos\Articulos\Model\schArticulosServer_Intf.pas" />
<DCCReference Include="..\Modulos\Articulos\Model\uBizArticulosServer.pas"/> <DCCReference Include="..\Modulos\Articulos\Model\uBizArticulosServer.pas" />
<DCCReference Include="..\Modulos\Articulos\Servidor\srvArticulos_Impl.pas"> <DCCReference Include="..\Modulos\Articulos\Servidor\srvArticulos_Impl.pas">
<Form>srvArticulos</Form> <Form>srvArticulos</Form>
<DesignClass>TDARemoteService</DesignClass> <DesignClass>TDARemoteService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Contactos\Model\schContactosClient_Intf.pas"/> <DCCReference Include="..\Modulos\Contactos\Model\schContactosClient_Intf.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\schContactosServer_Intf.pas"/> <DCCReference Include="..\Modulos\Contactos\Model\schContactosServer_Intf.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\uBizClientesServer.pas"/> <DCCReference Include="..\Modulos\Contactos\Model\uBizClientesServer.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\uBizContactosServer.pas"/> <DCCReference Include="..\Modulos\Contactos\Model\uBizContactosServer.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\uBizEmpleadosServer.pas"/> <DCCReference Include="..\Modulos\Contactos\Model\uBizEmpleadosServer.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\uBizProveedoresServer.pas"/> <DCCReference Include="..\Modulos\Contactos\Model\uBizProveedoresServer.pas" />
<DCCReference Include="..\Modulos\Contactos\Reports\uRptEtiquetasContacto_Server.pas"> <DCCReference Include="..\Modulos\Contactos\Reports\uRptEtiquetasContacto_Server.pas">
<Form>RptEtiquetasContacto</Form> <Form>RptEtiquetasContacto</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Contactos\Reports\uRptFichasEmpleado_Server.pas"> <DCCReference Include="..\Modulos\Contactos\Reports\uRptFichasEmpleado_Server.pas">
<Form>RptFichasEmpleado</Form> <Form>RptFichasEmpleado</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Contactos\Servidor\srvContactos_Impl.pas"> <DCCReference Include="..\Modulos\Contactos\Servidor\srvContactos_Impl.pas">
<Form>srvContactos</Form> <Form>srvContactos</Form>
<DesignClass>TDARemoteService</DesignClass> <DesignClass>TDARemoteService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Fabricantes\Model\schFabricantesClient_Intf.pas"/> <DCCReference Include="..\Modulos\Fabricantes\Model\schFabricantesClient_Intf.pas" />
<DCCReference Include="..\Modulos\Fabricantes\Model\schFabricantesServer_Intf.pas"/> <DCCReference Include="..\Modulos\Fabricantes\Model\schFabricantesServer_Intf.pas" />
<DCCReference Include="..\Modulos\Fabricantes\Servidor\srvFabricantes_Impl.pas"> <DCCReference Include="..\Modulos\Fabricantes\Servidor\srvFabricantes_Impl.pas">
<Form>srvFabricantes</Form> <Form>srvFabricantes</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Facturas de cliente\Model\schFacturasClienteClient_Intf.pas"/> <DCCReference Include="..\Modulos\Facturas de cliente\Model\schFacturasClienteClient_Intf.pas" />
<DCCReference Include="..\Modulos\Facturas de cliente\Model\schFacturasClienteServer_Intf.pas"/> <DCCReference Include="..\Modulos\Facturas de cliente\Model\schFacturasClienteServer_Intf.pas" />
<DCCReference Include="..\Modulos\Facturas de cliente\Model\uBizFacturasClienteServer.pas"/> <DCCReference Include="..\Modulos\Facturas de cliente\Model\uBizFacturasClienteServer.pas" />
<DCCReference Include="..\Modulos\Facturas de cliente\Reports\uRptFacturasCliente_Server.pas"> <DCCReference Include="..\Modulos\Facturas de cliente\Reports\uRptFacturasCliente_Server.pas">
<Form>RptFacturasCliente</Form> <Form>RptFacturasCliente</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Facturas de cliente\Reports\uRptWordFacturaCliente.pas"> <DCCReference Include="..\Modulos\Facturas de cliente\Reports\uRptWordFacturaCliente.pas">
<Form>RptWordFacturaCliente</Form> <Form>RptWordFacturaCliente</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Facturas de cliente\Servidor\srvFacturasCliente_Impl.pas"> <DCCReference Include="..\Modulos\Facturas de cliente\Servidor\srvFacturasCliente_Impl.pas">
<Form>srvFacturasCliente</Form> <Form>srvFacturasCliente</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Facturas de proveedor\Model\schFacturasProveedorClient_Intf.pas"/> <DCCReference Include="..\Modulos\Facturas de proveedor\Model\schFacturasProveedorClient_Intf.pas" />
<DCCReference Include="..\Modulos\Facturas de proveedor\Model\schFacturasProveedorServer_Intf.pas"/> <DCCReference Include="..\Modulos\Facturas de proveedor\Model\schFacturasProveedorServer_Intf.pas" />
<DCCReference Include="..\Modulos\Facturas de proveedor\Model\uBizFacturasProveedorServer.pas"/> <DCCReference Include="..\Modulos\Facturas de proveedor\Model\uBizFacturasProveedorServer.pas" />
<DCCReference Include="..\Modulos\Facturas de proveedor\Servidor\srvFacturasProveedor_Impl.pas"> <DCCReference Include="..\Modulos\Facturas de proveedor\Servidor\srvFacturasProveedor_Impl.pas">
<Form>srvFacturasProveedor</Form> <Form>srvFacturasProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Familias\Model\schFamiliasClient_Intf.pas"/> <DCCReference Include="..\Modulos\Familias\Model\schFamiliasClient_Intf.pas" />
<DCCReference Include="..\Modulos\Familias\Model\schFamiliasServer_Intf.pas"/> <DCCReference Include="..\Modulos\Familias\Model\schFamiliasServer_Intf.pas" />
<DCCReference Include="..\Modulos\Familias\Servidor\srvFamilias_Impl.pas"/> <DCCReference Include="..\Modulos\Familias\Servidor\srvFamilias_Impl.pas" />
<DCCReference Include="..\Modulos\Formas de pago\Model\schFormasPagoClient_Intf.pas"/> <DCCReference Include="..\Modulos\Formas de pago\Model\schFormasPagoClient_Intf.pas" />
<DCCReference Include="..\Modulos\Formas de pago\Model\schFormasPagoServer_Intf.pas"/> <DCCReference Include="..\Modulos\Formas de pago\Model\schFormasPagoServer_Intf.pas" />
<DCCReference Include="..\Modulos\Formas de pago\Servidor\srvFormasPago_Impl.pas"/> <DCCReference Include="..\Modulos\Formas de pago\Servidor\srvFormasPago_Impl.pas" />
<DCCReference Include="..\Modulos\Formas de pago\Servidor\srvUnidadesMedida_Impl.pas"/> <DCCReference Include="..\Modulos\Formas de pago\Servidor\srvUnidadesMedida_Impl.pas" />
<DCCReference Include="..\Modulos\Historico de movimientos\Model\schHistoricoMovimientosClient_Intf.pas"/> <DCCReference Include="..\Modulos\Historico de movimientos\Model\schHistoricoMovimientosClient_Intf.pas" />
<DCCReference Include="..\Modulos\Historico de movimientos\Model\schHistoricoMovimientosServer_Intf.pas"/> <DCCReference Include="..\Modulos\Historico de movimientos\Model\schHistoricoMovimientosServer_Intf.pas" />
<DCCReference Include="..\Modulos\Historico de movimientos\Servidor\srvHistoricoMovimientos_Impl.pas"> <DCCReference Include="..\Modulos\Historico de movimientos\Servidor\srvHistoricoMovimientos_Impl.pas">
<Form>srvHistoricoMovimientos</Form> <Form>srvHistoricoMovimientos</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Inventario\Model\schInventarioClient_Intf.pas"/> <DCCReference Include="..\Modulos\Inventario\Model\schInventarioClient_Intf.pas" />
<DCCReference Include="..\Modulos\Inventario\Model\schInventarioServer_Intf.pas"/> <DCCReference Include="..\Modulos\Inventario\Model\schInventarioServer_Intf.pas" />
<DCCReference Include="..\Modulos\Inventario\Servidor\srvInventario_Impl.pas"> <DCCReference Include="..\Modulos\Inventario\Servidor\srvInventario_Impl.pas">
<Form>srvInventario</Form> <Form>srvInventario</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Obras\Model\schObrasClient_Intf.pas"/> <DCCReference Include="..\Modulos\Obras\Model\schObrasClient_Intf.pas" />
<DCCReference Include="..\Modulos\Obras\Model\schObrasServer_Intf.pas"/> <DCCReference Include="..\Modulos\Obras\Model\schObrasServer_Intf.pas" />
<DCCReference Include="..\Modulos\Obras\Model\uBizObrasServer.pas"/> <DCCReference Include="..\Modulos\Obras\Model\uBizObrasServer.pas" />
<DCCReference Include="..\Modulos\Obras\Servidor\srvObras_Impl.pas"/> <DCCReference Include="..\Modulos\Obras\Servidor\srvObras_Impl.pas" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Model\schPedidosProveedorClient_Intf.pas"/> <DCCReference Include="..\Modulos\Pedidos a proveedor\Model\schPedidosProveedorClient_Intf.pas" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Model\schPedidosProveedorServer_Intf.pas"/> <DCCReference Include="..\Modulos\Pedidos a proveedor\Model\schPedidosProveedorServer_Intf.pas" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Model\uBizPedidosProveedorServer.pas"/> <DCCReference Include="..\Modulos\Pedidos a proveedor\Model\uBizPedidosProveedorServer.pas" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Reports\uRptPedidosProveedor_Server.pas"> <DCCReference Include="..\Modulos\Pedidos a proveedor\Reports\uRptPedidosProveedor_Server.pas">
<Form>RptPedidosProveedor</Form> <Form>RptPedidosProveedor</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Pedidos a proveedor\Reports\uRptWordPedidoProveedor.pas"> <DCCReference Include="..\Modulos\Pedidos a proveedor\Reports\uRptWordPedidoProveedor.pas">
<Form>RptWordPedidoProveedor</Form> <Form>RptWordPedidoProveedor</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Pedidos a proveedor\Servidor\srvPedidosProveedor_Impl.pas"> <DCCReference Include="..\Modulos\Pedidos a proveedor\Servidor\srvPedidosProveedor_Impl.pas">
<Form>srvPedidosProveedor</Form> <Form>srvPedidosProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Presupuestos de cliente\Model\schPresupuestosClienteClient_Intf.pas"/> <DCCReference Include="..\Modulos\Presupuestos de cliente\Model\schPresupuestosClienteClient_Intf.pas" />
<DCCReference Include="..\Modulos\Presupuestos de cliente\Model\schPresupuestosClienteServer_Intf.pas"/> <DCCReference Include="..\Modulos\Presupuestos de cliente\Model\schPresupuestosClienteServer_Intf.pas" />
<DCCReference Include="..\Modulos\Presupuestos de cliente\Model\uBizPresupuestosClienteServer.pas"/> <DCCReference Include="..\Modulos\Presupuestos de cliente\Model\uBizPresupuestosClienteServer.pas" />
<DCCReference Include="..\Modulos\Presupuestos de cliente\Reports\uRptPresupuestosCliente_Server.pas"> <DCCReference Include="..\Modulos\Presupuestos de cliente\Reports\uRptPresupuestosCliente_Server.pas">
<Form>RptPresupuestosCliente</Form> <Form>RptPresupuestosCliente</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Presupuestos de cliente\Reports\uRptWordCertificadoTrabajo_Server.pas"> <DCCReference Include="..\Modulos\Presupuestos de cliente\Reports\uRptWordCertificadoTrabajo_Server.pas">
<Form>RptWordCertificadoTrabajo</Form> <Form>RptWordCertificadoTrabajo</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Presupuestos de cliente\Reports\uRptWordPresupuestoCliente.pas"> <DCCReference Include="..\Modulos\Presupuestos de cliente\Reports\uRptWordPresupuestoCliente.pas">
<Form>RptWordPresupuestoCliente</Form> <Form>RptWordPresupuestoCliente</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Presupuestos de cliente\Servidor\srvPresupuestosCliente_Impl.pas"> <DCCReference Include="..\Modulos\Presupuestos de cliente\Servidor\srvPresupuestosCliente_Impl.pas">
<Form>srvPresupuestosCliente</Form> <Form>srvPresupuestosCliente</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Recibos de cliente\Model\schRecibosClienteClient_Intf.pas"/> <DCCReference Include="..\Modulos\Recibos de cliente\Model\schRecibosClienteClient_Intf.pas" />
<DCCReference Include="..\Modulos\Recibos de cliente\Model\schRecibosClienteServer_Intf.pas"/> <DCCReference Include="..\Modulos\Recibos de cliente\Model\schRecibosClienteServer_Intf.pas" />
<DCCReference Include="..\Modulos\Recibos de cliente\Reports\uRptRecibosCliente_Server.pas"> <DCCReference Include="..\Modulos\Recibos de cliente\Reports\uRptRecibosCliente_Server.pas">
<Form>RptRecibosCliente</Form> <Form>RptRecibosCliente</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Recibos de cliente\Servidor\srvRecibosCliente_Impl.pas"> <DCCReference Include="..\Modulos\Recibos de cliente\Servidor\srvRecibosCliente_Impl.pas">
<Form>srvRecibosCliente</Form> <Form>srvRecibosCliente</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Recibos de proveedor\Model\schRecibosProveedorClient_Intf.pas"/> <DCCReference Include="..\Modulos\Recibos de proveedor\Model\schRecibosProveedorClient_Intf.pas" />
<DCCReference Include="..\Modulos\Recibos de proveedor\Model\schRecibosProveedorServer_Intf.pas"/> <DCCReference Include="..\Modulos\Recibos de proveedor\Model\schRecibosProveedorServer_Intf.pas" />
<DCCReference Include="..\Modulos\Recibos de proveedor\Servidor\srvRecibosProveedor_Impl.pas"> <DCCReference Include="..\Modulos\Recibos de proveedor\Servidor\srvRecibosProveedor_Impl.pas">
<Form>srvRecibosProveedor</Form> <Form>srvRecibosProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Referencias\Model\schReferenciasClient_Intf.pas"/> <DCCReference Include="..\Modulos\Referencias\Model\schReferenciasClient_Intf.pas" />
<DCCReference Include="..\Modulos\Referencias\Model\schReferenciasServer_Intf.pas"/> <DCCReference Include="..\Modulos\Referencias\Model\schReferenciasServer_Intf.pas" />
<DCCReference Include="..\Modulos\Referencias\Servidor\srvReferencias_Impl.pas"> <DCCReference Include="..\Modulos\Referencias\Servidor\srvReferencias_Impl.pas">
<Form>srvReferencias</Form> <Form>srvReferencias</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Remesas de cliente\Model\schRemesasClienteClient_Intf.pas"/> <DCCReference Include="..\Modulos\Remesas de cliente\Model\schRemesasClienteClient_Intf.pas" />
<DCCReference Include="..\Modulos\Remesas de cliente\Model\schRemesasClienteServer_Intf.pas"/> <DCCReference Include="..\Modulos\Remesas de cliente\Model\schRemesasClienteServer_Intf.pas" />
<DCCReference Include="..\Modulos\Remesas de cliente\Model\uBizRemesasClienteServer.pas"/> <DCCReference Include="..\Modulos\Remesas de cliente\Model\uBizRemesasClienteServer.pas" />
<DCCReference Include="..\Modulos\Remesas de cliente\Servidor\srvRemesasCliente_Impl.pas"> <DCCReference Include="..\Modulos\Remesas de cliente\Servidor\srvRemesasCliente_Impl.pas">
<Form>srvRemesasCliente</Form> <Form>srvRemesasCliente</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Remesas de proveedor\Model\schRemesasProveedorClient_Intf.pas"/> <DCCReference Include="..\Modulos\Remesas de proveedor\Model\schRemesasProveedorClient_Intf.pas" />
<DCCReference Include="..\Modulos\Remesas de proveedor\Model\schRemesasProveedorServer_Intf.pas"/> <DCCReference Include="..\Modulos\Remesas de proveedor\Model\schRemesasProveedorServer_Intf.pas" />
<DCCReference Include="..\Modulos\Remesas de proveedor\Model\uBizRemesasProveedorServer.pas"/> <DCCReference Include="..\Modulos\Remesas de proveedor\Model\uBizRemesasProveedorServer.pas" />
<DCCReference Include="..\Modulos\Remesas de proveedor\Servidor\srvRemesasProveedor_Impl.pas"> <DCCReference Include="..\Modulos\Remesas de proveedor\Servidor\srvRemesasProveedor_Impl.pas">
<Form>srvRemesasProveedor</Form> <Form>srvRemesasProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Tipos de IVA\Model\schTiposIVAClient_Intf.pas"/> <DCCReference Include="..\Modulos\Tipos de IVA\Model\schTiposIVAClient_Intf.pas" />
<DCCReference Include="..\Modulos\Tipos de IVA\Model\schTiposIVAServer_Intf.pas"/> <DCCReference Include="..\Modulos\Tipos de IVA\Model\schTiposIVAServer_Intf.pas" />
<DCCReference Include="..\Modulos\Tipos de IVA\Servidor\srvTiposIVA_Impl.pas"/> <DCCReference Include="..\Modulos\Tipos de IVA\Servidor\srvTiposIVA_Impl.pas" />
<DCCReference Include="..\Modulos\Unidades de medida\Model\schUnidadesMedidaClient_Intf.pas"/> <DCCReference Include="..\Modulos\Unidades de medida\Model\schUnidadesMedidaClient_Intf.pas" />
<DCCReference Include="..\Modulos\Unidades de medida\Model\schUnidadesMedidaServer_Intf.pas"/> <DCCReference Include="..\Modulos\Unidades de medida\Model\schUnidadesMedidaServer_Intf.pas" />
<DCCReference Include="..\Modulos\Unidades de medida\Servidor\srvUnidadesMedida_Impl.pas"> <DCCReference Include="..\Modulos\Unidades de medida\Servidor\srvUnidadesMedida_Impl.pas">
<Form>srvUnidadesMedida</Form> <Form>srvUnidadesMedida</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Servicios\FactuGES_Intf.pas"/> <DCCReference Include="..\Servicios\FactuGES_Intf.pas" />
<DCCReference Include="..\Servicios\FactuGES_Invk.pas"/> <DCCReference Include="..\Servicios\FactuGES_Invk.pas" />
<DCCReference Include="Configuracion\srvConfiguracion_Impl.pas"> <DCCReference Include="Configuracion\srvConfiguracion_Impl.pas">
<Form>srvConfiguracion</Form> <Form>srvConfiguracion</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="Configuracion\uConexionBD.pas"> <DCCReference Include="Configuracion\uConexionBD.pas">
<Form>frConexionBD</Form> <Form>frConexionBD</Form>
<DesignClass>TFrame</DesignClass> <DesignClass>TFrame</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="Configuracion\uConfGeneral.pas"> <DCCReference Include="Configuracion\uConfGeneral.pas">
<Form>frConfGeneral</Form> <Form>frConfGeneral</Form>
<DesignClass>TFrame</DesignClass> <DesignClass>TFrame</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="Configuracion\uConfiguracion.pas"> <DCCReference Include="Configuracion\uConfiguracion.pas">
<Form>fConfiguracion</Form> <Form>fConfiguracion</Form>
<DesignClass>TForm</DesignClass> <DesignClass>TForm</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="Configuracion\uFrameConfiguracion.pas"> <DCCReference Include="Configuracion\uFrameConfiguracion.pas">
<Form>FrameConfiguracion</Form> <Form>FrameConfiguracion</Form>
<DesignClass>TFrame</DesignClass> <DesignClass>TFrame</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="srvLogin_Impl.pas"> <DCCReference Include="srvLogin_Impl.pas">
<Form>srvLogin</Form> <Form>srvLogin</Form>
<DesignClass>TDARemoteService</DesignClass> <DesignClass>TDARemoteService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="uAcercaDe.pas"> <DCCReference Include="uAcercaDe.pas">
<Form>fAcercaDe</Form> <Form>fAcercaDe</Form>
</DCCReference> </DCCReference>
<DCCReference Include="uDataModuleServer.pas"> <DCCReference Include="uDataModuleServer.pas">
<Form>dmServer</Form> <Form>dmServer</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="uServerMainForm.pas"> <DCCReference Include="uServerMainForm.pas">
<Form>fServerForm</Form> <Form>fServerForm</Form>
</DCCReference> </DCCReference>
<DCCReference Include="Utiles\AHWord97.pas"/> <DCCReference Include="Utiles\AHWord97.pas" />
<DCCReference Include="Utiles\RegExpr.pas"/> <DCCReference Include="Utiles\RegExpr.pas" />
<DCCReference Include="Utiles\uBusinessUtils.pas"/> <DCCReference Include="Utiles\uBusinessUtils.pas" />
<DCCReference Include="Utiles\uDatabaseUtils.pas"/> <DCCReference Include="Utiles\uDatabaseUtils.pas" />
<DCCReference Include="Utiles\uReferenciasUtils.pas"/> <DCCReference Include="Utiles\uReferenciasUtils.pas" />
<DCCReference Include="Utiles\uRestriccionesUsuarioUtils.pas"/> <DCCReference Include="Utiles\uRestriccionesUsuarioUtils.pas" />
<DCCReference Include="Utiles\uSchemaUtilsServer.pas"/> <DCCReference Include="Utiles\uSchemaUtilsServer.pas" />
<DCCReference Include="Utiles\uServerAppUtils.pas"/> <DCCReference Include="Utiles\uServerAppUtils.pas" />
<DCCReference Include="Utiles\uSesionesUtils.pas"/> <DCCReference Include="Utiles\uSesionesUtils.pas" />
</ItemGroup> </ItemGroup>
</Project> </Project>
<!-- EurekaLog First Line <!-- EurekaLog First Line
[Exception Log] [Exception Log]

View File

@ -14,7 +14,7 @@ BEGIN
BEGIN BEGIN
VALUE "FileVersion", "1.2.4.0\0" VALUE "FileVersion", "1.2.4.0\0"
VALUE "ProductVersion", "1.2.4.0\0" VALUE "ProductVersion", "1.2.4.0\0"
VALUE "CompileDate", "viernes, 22 de agosto de 2008 10:44\0" VALUE "CompileDate", "viernes, 22 de agosto de 2008 13:20\0"
END END
END END
BLOCK "VarFileInfo" BLOCK "VarFileInfo"