Repaso informes
git-svn-id: https://192.168.0.254/svn/Proyectos.Noviseda_FactuGES2/trunk@33 f33bb606-9f5c-448d-9c99-757f00063c96
This commit is contained in:
parent
912834d4ac
commit
d8d65672a2
@ -42,10 +42,8 @@ type
|
|||||||
function Duplicar(AFactura: IBizFacturaCliente): IBizFacturaCliente;
|
function Duplicar(AFactura: IBizFacturaCliente): IBizFacturaCliente;
|
||||||
function GenerarAbono(AFactura: IBizFacturaCliente): IBizFacturaCliente;
|
function GenerarAbono(AFactura: IBizFacturaCliente): IBizFacturaCliente;
|
||||||
|
|
||||||
procedure Preview(AFactura : IBizFacturaCliente; AllItems: Boolean = false;
|
procedure Preview(AFactura : IBizFacturaCliente; AllItems: Boolean = false; const Marca: Integer);
|
||||||
const VerSello: Boolean = True; const VerCopia: Boolean = True);
|
procedure Print(AFactura : IBizFacturaCliente; AllItems: Boolean = false; const Marca: Integer);
|
||||||
procedure Print(AFactura : IBizFacturaCliente; AllItems: Boolean = false;
|
|
||||||
const VerSello: Boolean = True; const VerCopia: Boolean = True);
|
|
||||||
|
|
||||||
procedure RecalcularImportes(AFactura: IBizFacturaCliente);
|
procedure RecalcularImportes(AFactura: IBizFacturaCliente);
|
||||||
function EsModificable(AFactura: IBizFacturaCliente): Boolean;
|
function EsModificable(AFactura: IBizFacturaCliente): Boolean;
|
||||||
|
|||||||
@ -10,8 +10,8 @@ uses
|
|||||||
type
|
type
|
||||||
IFacturasClienteReportController = interface(IControllerBase)
|
IFacturasClienteReportController = interface(IControllerBase)
|
||||||
['{A0F41767-4FF6-4BAE-9FC9-894DD721D756}']
|
['{A0F41767-4FF6-4BAE-9FC9-894DD721D756}']
|
||||||
procedure Preview(const AListaID : TIntegerList; const VerSello: Boolean = True; const VerCopia: Boolean = True);
|
procedure Preview(const AListaID : TIntegerList; const Marca: Integer);
|
||||||
procedure Print(const AListaID : TIntegerList; const VerSello: Boolean = True; const VerCopia: Boolean = True);
|
procedure Print(const AListaID : TIntegerList; const Marca: Integer);
|
||||||
function ExportToWord(const AID: Integer; const AFileName : String = ''; const VerSello: Boolean = True): Boolean;
|
function ExportToWord(const AID: Integer; const AFileName : String = ''; const VerSello: Boolean = True): Boolean;
|
||||||
function ExportToPDF(const AID: Integer; const AFileName : String = ''; const VerSello: Boolean = True): Boolean;
|
function ExportToPDF(const AID: Integer; const AFileName : String = ''; const VerSello: Boolean = True): Boolean;
|
||||||
end;
|
end;
|
||||||
@ -24,8 +24,8 @@ type
|
|||||||
constructor Create; override;
|
constructor Create; override;
|
||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
|
|
||||||
procedure Preview(const AListaID : TIntegerList; const VerSello: Boolean = True; const VerCopia: Boolean = True);
|
procedure Preview(const AListaID : TIntegerList; const Marca: Integer);
|
||||||
procedure Print(const AListaID : TIntegerList; const VerSello: Boolean = True; const VerCopia: Boolean = True);
|
procedure Print(const AListaID : TIntegerList; const Marca: Integer);
|
||||||
function ExportToWord(const AID: Integer; const AFileName : String = ''; const VerSello: Boolean = True): Boolean;
|
function ExportToWord(const AID: Integer; const AFileName : String = ''; const VerSello: Boolean = True): Boolean;
|
||||||
function ExportToPDF(const AID: Integer; const AFileName : String = ''; const VerSello: Boolean = True): Boolean;
|
function ExportToPDF(const AID: Integer; const AFileName : String = ''; const VerSello: Boolean = True): Boolean;
|
||||||
end;
|
end;
|
||||||
@ -107,7 +107,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFacturasClienteReportController.Preview(const AListaID : TIntegerList; const VerSello: Boolean = True; const VerCopia: Boolean = True);
|
procedure TFacturasClienteReportController.Preview(const AListaID : TIntegerList; const Marca: Integer);
|
||||||
var
|
var
|
||||||
AStream: Binary;
|
AStream: Binary;
|
||||||
AEditor : IEditorFacturasClientePreview;
|
AEditor : IEditorFacturasClientePreview;
|
||||||
@ -116,7 +116,7 @@ begin
|
|||||||
|
|
||||||
ShowHourglassCursor;
|
ShowHourglassCursor;
|
||||||
try
|
try
|
||||||
AStream := FDataModule.GetRptFacturas(AListaID, VerSello, VerCopia);
|
AStream := FDataModule.GetRptFacturas(AListaID, Marca);
|
||||||
try
|
try
|
||||||
CreateEditor('EditorFacturasClientePreview', IEditorFacturasClientePreview, AEditor);
|
CreateEditor('EditorFacturasClientePreview', IEditorFacturasClientePreview, AEditor);
|
||||||
if Assigned(AEditor) then
|
if Assigned(AEditor) then
|
||||||
@ -137,7 +137,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFacturasClienteReportController.Print(const AListaID : TIntegerList; const VerSello: Boolean = True; const VerCopia: Boolean = True);
|
procedure TFacturasClienteReportController.Print(const AListaID : TIntegerList; const Marca: Integer);
|
||||||
var
|
var
|
||||||
AStream: Binary;
|
AStream: Binary;
|
||||||
AEditor : IEditorFacturasClientePreview;
|
AEditor : IEditorFacturasClientePreview;
|
||||||
@ -146,7 +146,7 @@ begin
|
|||||||
|
|
||||||
ShowHourglassCursor;
|
ShowHourglassCursor;
|
||||||
try
|
try
|
||||||
AStream := FDataModule.GetRptFacturas(AListaID, VerSello, VerCopia);
|
AStream := FDataModule.GetRptFacturas(AListaID, Marca);
|
||||||
try
|
try
|
||||||
CreateEditor('EditorFacturasClientePreview', IEditorFacturasClientePreview, AEditor);
|
CreateEditor('EditorFacturasClientePreview', IEditorFacturasClientePreview, AEditor);
|
||||||
if Assigned(AEditor) then
|
if Assigned(AEditor) then
|
||||||
|
|||||||
@ -33,9 +33,7 @@ type
|
|||||||
function NewItem : IBizFacturaCliente;
|
function NewItem : IBizFacturaCliente;
|
||||||
|
|
||||||
// Report
|
// Report
|
||||||
function GetRptFacturas(const AListaID: TIntegerList; const VerSello: Boolean = True; const VerCopia: Boolean = True): Binary;
|
function GetRptFacturas(const AListaID: TIntegerList; const Marca: Integer): Binary;
|
||||||
function GetRptWordFactura(const AID: Integer; const VerSello: Boolean = True): Binary;
|
|
||||||
function GetRptPDFFactura(const AID: Integer; const VerSello: Boolean = True): Binary;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
@ -54,41 +52,18 @@ begin
|
|||||||
RORemoteService.Message := dmConexion.Message;
|
RORemoteService.Message := dmConexion.Message;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TDataModuleFacturasCliente.GetRptFacturas(const AListaID: TIntegerList; const VerSello: Boolean = True; const VerCopia: Boolean = True): Binary;
|
function TDataModuleFacturasCliente.GetRptFacturas(const AListaID: TIntegerList; const Marca: Integer): Binary;
|
||||||
var
|
var
|
||||||
AParam : TIntegerArray;
|
AParam : TIntegerArray;
|
||||||
begin
|
begin
|
||||||
AParam := AListaID.ToIntegerArray;
|
AParam := AListaID.ToIntegerArray;
|
||||||
try
|
try
|
||||||
Result := (RORemoteService as IsrvFacturasCliente).GenerarInforme(AParam, VerSello, VerCopia);
|
Result := (RORemoteService as IsrvFacturasCliente).GenerarInforme(AParam, Marca);
|
||||||
finally
|
finally
|
||||||
FreeANDNIL(AParam);
|
FreeANDNIL(AParam);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TDataModuleFacturasCliente.GetRptPDFFactura(const AID: Integer; const VerSello: Boolean = True): Binary;
|
|
||||||
var
|
|
||||||
AParam : TIntegerArray;
|
|
||||||
begin
|
|
||||||
AParam := TIntegerArray.Create;
|
|
||||||
try
|
|
||||||
AParam.Add(AID);
|
|
||||||
Result := (RORemoteService as IsrvFacturasCliente).GenerarInformeEnPDF(AParam, VerSello);
|
|
||||||
finally
|
|
||||||
FreeANDNIL(AParam);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TDataModuleFacturasCliente.GetRptWordFactura(const AID: Integer; const VerSello: Boolean = True): Binary;
|
|
||||||
begin
|
|
||||||
Result := (RORemoteService as IsrvFacturasCliente).GenerarInformeEnWord(AID, VerSello)
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TDataModuleFacturasCliente.NewItem: IBizFacturaCliente;
|
|
||||||
begin
|
|
||||||
Result := GetItem(ID_NULO)
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TDataModuleFacturasCliente._GetDetalles: IBizDetallesFacturaCliente;
|
function TDataModuleFacturasCliente._GetDetalles: IBizDetallesFacturaCliente;
|
||||||
var
|
var
|
||||||
ADetalles : TDAMemDataTable;
|
ADetalles : TDAMemDataTable;
|
||||||
|
|||||||
@ -105,7 +105,7 @@ type
|
|||||||
FDesglosado : Boolean;
|
FDesglosado : Boolean;
|
||||||
|
|
||||||
//Genera cada una de las facturas a imprimir
|
//Genera cada una de las facturas a imprimir
|
||||||
procedure _GenerarFactura(const ID: Integer; const VerSello: Boolean = True; const VerCopia: Boolean = True);
|
procedure _GenerarFactura(const ID: Integer; const Marca: Integer);
|
||||||
|
|
||||||
procedure PrepararTablaInforme(ATabla: TDAMemDataTable);
|
procedure PrepararTablaInforme(ATabla: TDAMemDataTable);
|
||||||
procedure PrepararTablaResumenInforme(ATabla: IDADataset);
|
procedure PrepararTablaResumenInforme(ATabla: IDADataset);
|
||||||
@ -113,7 +113,7 @@ type
|
|||||||
procedure IniciarParametrosInforme;
|
procedure IniciarParametrosInforme;
|
||||||
procedure RecuperarNombresClientes;
|
procedure RecuperarNombresClientes;
|
||||||
public
|
public
|
||||||
function GenerarFactura(const ListaID : TIntegerArray; const VerSello: Boolean = True; const VerCopia: Boolean = True): Binary;
|
function GenerarFactura(const ListaID : TIntegerArray; const Marca: Integer): Binary;
|
||||||
function GenerarFacturaEnPDF(const ListaID : TIntegerArray; const VerSello: Boolean = True): Binary;
|
function GenerarFacturaEnPDF(const ListaID : TIntegerArray; const VerSello: Boolean = True): Binary;
|
||||||
function GenerarInformeIVA(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
|
function GenerarInformeIVA(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
|
||||||
function GenerarInformeListadoFacturas(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
|
function GenerarInformeListadoFacturas(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
|
||||||
@ -171,7 +171,7 @@ begin
|
|||||||
FreeANDNIL(FListaNombresClientes);
|
FreeANDNIL(FListaNombresClientes);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TRptFacturasCliente.GenerarFactura(const ListaID: TIntegerArray; const VerSello: Boolean = True; const VerCopia: Boolean = True): Binary;
|
function TRptFacturasCliente.GenerarFactura(const ListaID: TIntegerArray; const Marca: Integer): Binary;
|
||||||
var
|
var
|
||||||
i: Integer;
|
i: Integer;
|
||||||
begin
|
begin
|
||||||
@ -179,7 +179,7 @@ begin
|
|||||||
try
|
try
|
||||||
//Vamos generando todos y cada una de las facturas recibidas
|
//Vamos generando todos y cada una de las facturas recibidas
|
||||||
for i := 0 to ListaID.Count - 1 do
|
for i := 0 to ListaID.Count - 1 do
|
||||||
_GenerarFactura(ListaID.Items[i], VerSello, VerCopia);
|
_GenerarFactura(ListaID.Items[i], Marca);
|
||||||
|
|
||||||
frxReport.PreviewPages.SaveToStream(Result);
|
frxReport.PreviewPages.SaveToStream(Result);
|
||||||
finally
|
finally
|
||||||
@ -194,7 +194,7 @@ begin
|
|||||||
try
|
try
|
||||||
//Vamos generando todos y cada una de las facturas recibidas
|
//Vamos generando todos y cada una de las facturas recibidas
|
||||||
for i := 0 to ListaID.Count - 1 do
|
for i := 0 to ListaID.Count - 1 do
|
||||||
_GenerarFactura(ListaID.Items[i], VerSello);
|
// _GenerarFactura(ListaID.Items[i], VerSello);
|
||||||
|
|
||||||
frxPDFExport1.Stream := Result;
|
frxPDFExport1.Stream := Result;
|
||||||
frxReport.Export(frxPDFExport1)
|
frxReport.Export(frxPDFExport1)
|
||||||
@ -651,7 +651,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TRptFacturasCliente._GenerarFactura(const ID: Integer; const VerSello: Boolean = True; const VerCopia: Boolean = True);
|
procedure TRptFacturasCliente._GenerarFactura(const ID: Integer; const Marca: Integer);
|
||||||
var
|
var
|
||||||
AInforme: Variant;
|
AInforme: Variant;
|
||||||
|
|
||||||
@ -677,7 +677,7 @@ begin
|
|||||||
frxReport.LoadFromFile(AInforme, True);
|
frxReport.LoadFromFile(AInforme, True);
|
||||||
|
|
||||||
//La primera impresion siempre es sin la etiqueta copia
|
//La primera impresion siempre es sin la etiqueta copia
|
||||||
frxReport.Variables.Variables['VerCopia'] := 0;
|
frxReport.Variables.Variables['Marca'] := 0;
|
||||||
frxReport.PrepareReport(False);
|
frxReport.PrepareReport(False);
|
||||||
// if VerCopia then
|
// if VerCopia then
|
||||||
// begin
|
// begin
|
||||||
|
|||||||
@ -34,7 +34,7 @@ type
|
|||||||
private
|
private
|
||||||
protected
|
protected
|
||||||
{ IsrvFacturasCliente methods }
|
{ IsrvFacturasCliente methods }
|
||||||
function GenerarInforme(const ListaID: TIntegerArray; const VerSello: Boolean = True; const VerCopia: Boolean = True): Binary;
|
function GenerarInforme(const ListaID: TIntegerArray; const Marca: Integer): Binary;
|
||||||
function GenerarInformeEnWord(const ID: Integer; const VerSello: Boolean = True): Binary;
|
function GenerarInformeEnWord(const ID: Integer; const VerSello: Boolean = True): Binary;
|
||||||
function GenerarInformeEnPDF(const ListaID: TIntegerArray; const VerSello: Boolean = True): Binary;
|
function GenerarInformeEnPDF(const ListaID: TIntegerArray; const VerSello: Boolean = True): Binary;
|
||||||
end;
|
end;
|
||||||
@ -95,13 +95,13 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TsrvFacturasCliente.GenerarInforme(const ListaID: TIntegerArray; const VerSello: Boolean = True; const VerCopia: Boolean = True): Binary;
|
function TsrvFacturasCliente.GenerarInforme(const ListaID: TIntegerArray; const Marca: Integer): Binary;
|
||||||
var
|
var
|
||||||
AReportGenerator : TRptFacturasCliente;
|
AReportGenerator : TRptFacturasCliente;
|
||||||
begin
|
begin
|
||||||
AReportGenerator := TRptFacturasCliente.Create(nil);
|
AReportGenerator := TRptFacturasCliente.Create(nil);
|
||||||
try
|
try
|
||||||
Result := AReportGenerator.GenerarFactura(ListaID, VerSello, VerCopia);
|
Result := AReportGenerator.GenerarFactura(ListaID, Marca);
|
||||||
finally
|
finally
|
||||||
FreeAndNIL(AReportGenerator);
|
FreeAndNIL(AReportGenerator);
|
||||||
end;
|
end;
|
||||||
|
|||||||
@ -1,471 +0,0 @@
|
|||||||
unit uEditorFacturaCliente;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
||||||
Dialogs, uEditorDBItem, DB, uDADataTable, JvAppStorage,
|
|
||||||
JvAppRegistryStorage, JvComponent, JvFormPlacement, ImgList,
|
|
||||||
PngImageList, StdActns, ActnList, ComCtrls, TBX, TB2Item, TB2Dock,
|
|
||||||
TB2Toolbar, ExtCtrls, JvExControls, JvNavigationPane,
|
|
||||||
uViewFacturaCliente, uCustomView, uViewBase, uViewTotales,
|
|
||||||
StdCtrls, pngimage, AppEvnts, JvComponentBase,
|
|
||||||
uBizFacturasCliente, uBizTiposIVA,
|
|
||||||
|
|
||||||
|
|
||||||
uIEditorFacturaCliente, uFacturasClienteController, uViewDetallesBase,
|
|
||||||
uViewDetallesFacturaCliente, dxLayoutLookAndFeels, JvExComCtrls, JvStatusBar,
|
|
||||||
uViewDetallesDTO, uViewDetallesArticulos, uTiposIVAController, uDAInterfaces,
|
|
||||||
cxControls, cxContainer, cxEdit, cxTextEdit, cxDBEdit, Grids, DBGrids,
|
|
||||||
uViewDetallesArticulosParaVenta, cxLabel;
|
|
||||||
|
|
||||||
|
|
||||||
type
|
|
||||||
TfEditorFacturaCliente = class(TfEditorDBItem, IEditorFacturaCliente)
|
|
||||||
frViewFacturaCliente1: TfrViewFacturaCliente;
|
|
||||||
frViewTotales1: TfrViewTotales;
|
|
||||||
frViewDetallesFacturaCliente1: TfrViewDetallesFacturaCliente;
|
|
||||||
actEnviarEMail: TAction;
|
|
||||||
TBXSeparatorItem6: TTBXSeparatorItem;
|
|
||||||
TBXItem7: TTBXItem;
|
|
||||||
TBXSubmenuItem2: TTBXSubmenuItem;
|
|
||||||
TBXItem33: TTBXItem;
|
|
||||||
procedure FormShow(Sender: TObject);
|
|
||||||
procedure frViewClienteFactura1edtlNombrePropertiesEditValueChanged(Sender: TObject);
|
|
||||||
procedure dsDataTableDataChange(Sender: TObject; Field: TField);
|
|
||||||
procedure CustomEditorClose(Sender: TObject; var Action: TCloseAction);
|
|
||||||
procedure frViewClienteFacturaedtlNombrePropertiesChange(Sender: TObject);
|
|
||||||
procedure pgPaginasChanging(Sender: TObject; var AllowChange: Boolean);
|
|
||||||
// procedure frViewTotales1edtDescuentoPropertiesValidate(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
|
|
||||||
procedure frViewTotales1bTiposIVAClick(Sender: TObject);
|
|
||||||
// procedure frViewTotales1eIVAPropertiesValidate(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
|
|
||||||
// procedure frViewTotales1cbRecargoEquivalenciaPropertiesEditValueChanged(Sender: TObject);
|
|
||||||
// procedure frViewTotales1ePortePropertiesValidate(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
|
|
||||||
procedure frViewTotales1ePorteEditing(Sender: TObject; var CanEdit: Boolean);
|
|
||||||
procedure actEnviarEMailExecute(Sender: TObject);
|
|
||||||
procedure actEnviarEMailUpdate(Sender: TObject);
|
|
||||||
|
|
||||||
private
|
|
||||||
procedure RecalcularPortePorUnidad;
|
|
||||||
|
|
||||||
protected
|
|
||||||
FController : IFacturasClienteController;
|
|
||||||
FFactura: IBizFacturaCliente;
|
|
||||||
FTiposIVAController : ITiposIVAController;
|
|
||||||
FTiposIVA: IBizTipoIVA;
|
|
||||||
FViewFactura: IViewFacturaCliente;
|
|
||||||
function GetController : IFacturasClienteController;
|
|
||||||
procedure SetController (const Value : IFacturasClienteController);
|
|
||||||
function GetFactura: IBizFacturaCliente;
|
|
||||||
procedure SetFactura(const Value: IBizFacturaCliente);
|
|
||||||
|
|
||||||
function GetViewFactura: IViewFacturaCliente;
|
|
||||||
procedure SetViewFactura(const Value: IViewFacturaCliente);
|
|
||||||
|
|
||||||
property ViewFacturaCliente: IViewFacturaCliente read GetViewFactura write SetViewFactura;
|
|
||||||
|
|
||||||
procedure OnClienteChanged(Sender: TObject);
|
|
||||||
|
|
||||||
procedure GuardarInterno; override;
|
|
||||||
procedure EliminarInterno; override;
|
|
||||||
procedure ImprimirInterno; override;
|
|
||||||
procedure PrevisualizarInterno; override;
|
|
||||||
|
|
||||||
procedure PonerTitulos(const ATitulo: string = ''); override;
|
|
||||||
public
|
|
||||||
destructor Destroy; override;
|
|
||||||
property Controller : IFacturasClienteController read GetController write SetController;
|
|
||||||
property Factura: IBizFacturaCliente read GetFactura write SetFactura;
|
|
||||||
constructor Create(AOwner: TComponent); override;
|
|
||||||
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); override; //Importante en este punto se deben de quitar los eventos que puedan afectar a la tabla una vez se cierre el editor.
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
{$R *.dfm}
|
|
||||||
|
|
||||||
uses
|
|
||||||
uBizContactos, uDataModuleUsuarios, uFactuGES_App,
|
|
||||||
uDetallesFacturaClienteController, uDialogUtils, uDataTableUtils,
|
|
||||||
uDialogOpcionesImpresionFacturasCliente;
|
|
||||||
// uGenerarAlbaranesCliFacCliUtils;
|
|
||||||
|
|
||||||
|
|
||||||
{ TfEditorFacturaCliente }
|
|
||||||
|
|
||||||
{
|
|
||||||
**************************** TfEditorFacturaCliente ****************************
|
|
||||||
}
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.actEnviarEMailExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
FController.EnviarFacturaPorEMail(Factura);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.actEnviarEMailUpdate(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
(Sender as TAction).Enabled := HayDatos;
|
|
||||||
end;
|
|
||||||
|
|
||||||
constructor TfEditorFacturaCliente.Create(AOwner: TComponent);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
pgPaginas.ActivePageIndex := 0;
|
|
||||||
ViewFacturaCliente := frViewFacturaCliente1;
|
|
||||||
FTiposIVAController := TTiposIVAController.Create;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.CustomEditorClose(Sender: TObject;
|
|
||||||
var Action: TCloseAction);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
Factura := NIL;
|
|
||||||
FTiposIVA := NIL;
|
|
||||||
|
|
||||||
FTiposIVAController := Nil;
|
|
||||||
FController := NIL;
|
|
||||||
FViewFactura := NIL;
|
|
||||||
end;
|
|
||||||
|
|
||||||
destructor TfEditorFacturaCliente.Destroy;
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.dsDataTableDataChange(Sender: TObject;
|
|
||||||
Field: TField);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
if Assigned(FFactura) and (not (FFactura.DataTable.Fetching) or
|
|
||||||
not (FFactura.DataTable.Opening) or not (FFactura.DataTable.Closing)) then
|
|
||||||
PonerTitulos;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.EliminarInterno;
|
|
||||||
var
|
|
||||||
ACadena : String;
|
|
||||||
begin
|
|
||||||
if Factura.TIPO = CTE_TIPO_FACTURA then
|
|
||||||
ACadena := '¿Desea borrar esta factura de cliente?'
|
|
||||||
else
|
|
||||||
ACadena := '¿Desea borrar este abono a cliente?';
|
|
||||||
|
|
||||||
if (Application.MessageBox(PChar(ACadena), 'Atención', MB_YESNO) = IDYES) then
|
|
||||||
begin
|
|
||||||
//Es el caso de querer borrar una factura pendiente cuyos recibos tienen devoluciones
|
|
||||||
if not FController.Eliminar(Factura) then
|
|
||||||
Application.MessageBox('La factura no ha podido ser eliminada porque tiene recibos con pagos o devoluciones emitidas.', 'Atención', MB_OK);
|
|
||||||
inherited;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
|
|
||||||
frViewTotales1.cbRecargoEquivalencia.Properties.OnEditValueChanged := nil;
|
|
||||||
frViewTotales1.eIVA.Properties.OnValidate := nil;
|
|
||||||
frViewTotales1.ePorte.Properties.OnValidate := nil;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.FormShow(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
|
|
||||||
if not Assigned(FViewFactura) then
|
|
||||||
raise Exception.Create('No hay ninguna vista asignada');
|
|
||||||
|
|
||||||
if not Assigned(Factura) then
|
|
||||||
raise Exception.Create('No hay ninguna factura asignada');
|
|
||||||
|
|
||||||
Factura.DataTable.Active := True;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.frViewClienteFactura1edtlNombrePropertiesEditValueChanged(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
with (Sender as TcxDBTextEdit) do
|
|
||||||
Enabled := (FFactura.ID <> 0)
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.frViewClienteFacturaedtlNombrePropertiesChange(
|
|
||||||
Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
PonerTitulos;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.frViewTotales1bTiposIVAClick(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
FTiposIVAController.VerTodos(FTiposIVA);
|
|
||||||
end;
|
|
||||||
|
|
||||||
{
|
|
||||||
procedure TfEditorFacturaCliente.frViewTotales1cbRecargoEquivalenciaPropertiesEditValueChanged(
|
|
||||||
Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
if Assigned(Factura) then
|
|
||||||
begin
|
|
||||||
Factura.Edit;
|
|
||||||
if frViewTotales1.cbRecargoEquivalencia.Checked then
|
|
||||||
Factura.RECARGO_EQUIVALENCIA := 1
|
|
||||||
else
|
|
||||||
Factura.RECARGO_EQUIVALENCIA := 0;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
procedure TfEditorFacturaCliente.frViewTotales1edtDescuentoPropertiesValidate(
|
|
||||||
Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption;
|
|
||||||
var Error: Boolean);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
Factura.DESCUENTO := DisplayValue;
|
|
||||||
end;
|
|
||||||
}
|
|
||||||
{
|
|
||||||
procedure TfEditorFacturaCliente.frViewTotales1eIVAPropertiesValidate(
|
|
||||||
Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption;
|
|
||||||
var Error: Boolean);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
Factura.Edit;
|
|
||||||
Factura.ID_TIPO_IVA := ((frViewTotales1.dsTiposIVA.DataTable) as IBizTipoIVA).ID;
|
|
||||||
end;
|
|
||||||
}
|
|
||||||
procedure TfEditorFacturaCliente.frViewTotales1ePorteEditing(Sender: TObject;
|
|
||||||
var CanEdit: Boolean);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
if FFactura.TIPO = CTE_TIPO_ABONO then
|
|
||||||
CanEdit := False;
|
|
||||||
end;
|
|
||||||
|
|
||||||
{
|
|
||||||
procedure TfEditorFacturaCliente.frViewTotales1ePortePropertiesValidate(
|
|
||||||
Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption;
|
|
||||||
var Error: Boolean);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
|
|
||||||
if (not VarIsNull(DisplayValue)) and (Length(DisplayValue) > 0) then
|
|
||||||
FFactura.IMPORTE_PORTE := DisplayValue
|
|
||||||
else
|
|
||||||
FFactura.IMPORTE_PORTE := 0;
|
|
||||||
|
|
||||||
// RecalcularPortePorUnidad; En los documentos de cliente el porte no se desglosa por articulo
|
|
||||||
end;
|
|
||||||
}
|
|
||||||
|
|
||||||
function TfEditorFacturaCliente.GetController: IFacturasClienteController;
|
|
||||||
begin
|
|
||||||
Result := FController;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TfEditorFacturaCliente.GetFactura: IBizFacturaCliente;
|
|
||||||
begin
|
|
||||||
Result := FFactura;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TfEditorFacturaCliente.GetViewFactura: IViewFacturaCliente;
|
|
||||||
begin
|
|
||||||
Result := FViewFactura;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.GuardarInterno;
|
|
||||||
var
|
|
||||||
bEsNuevo : Boolean;
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
|
|
||||||
ShowHourglassCursor;
|
|
||||||
//frViewDetallesFacturaCliente1.SaveGridStatus; // Para guardar estado del grid
|
|
||||||
frViewDetallesFacturaCliente1.BeginUpdate; // Para que no se mueva el foco
|
|
||||||
try
|
|
||||||
bEsNuevo := FFactura.EsNuevo;
|
|
||||||
FController.Guardar(FFactura);
|
|
||||||
finally
|
|
||||||
frViewDetallesFacturaCliente1.EndUpdate;
|
|
||||||
//frViewDetallesFacturaCliente1.RestoreGridStatus;
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
|
|
||||||
if bEsNuevo then
|
|
||||||
begin
|
|
||||||
if FFactura.TIPO = CTE_TIPO_FACTURA then
|
|
||||||
ShowInfoMessage('La factura se ha dado de alta con el código ' + FFactura.REFERENCIA)
|
|
||||||
else
|
|
||||||
begin
|
|
||||||
ShowInfoMessage('El abono se ha dado de alta con el código ' + FFactura.REFERENCIA);
|
|
||||||
//Preguntamos is desea hacer una orden de devolución asociada
|
|
||||||
// if (Application.MessageBox('¿Desea crear una orden de devolución para el abono?', 'Atención', MB_YESNO) = IDYES) then
|
|
||||||
// GenerarAlbaranCli(FFactura);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
Modified := False;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.ImprimirInterno;
|
|
||||||
var
|
|
||||||
AVerSello: Boolean;
|
|
||||||
AVerCopia: Boolean;
|
|
||||||
AllItems: Boolean;
|
|
||||||
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
AllItems := False;
|
|
||||||
AVerSello := True;
|
|
||||||
AVerCopia := True;
|
|
||||||
|
|
||||||
//Preguntamos si desea que en las facturas se vea el Sello
|
|
||||||
if ElegirOpcionesImpresionFacturaCliente(AVerSello, AVerCopia) then
|
|
||||||
FController.Print(FFactura, AllItems, AVerSello, AVerCopia);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.OnClienteChanged(Sender: TObject);
|
|
||||||
begin
|
|
||||||
FFactura.Cliente := ViewFacturaCliente.ViewClienteFactura.Cliente;
|
|
||||||
|
|
||||||
if not (FFactura.DataTable.State in dsEditModes) then
|
|
||||||
FFactura.DataTable.Edit;
|
|
||||||
|
|
||||||
// Actualizar IVA y RE a partir del tipo de IVA del cliente.
|
|
||||||
Factura.IVA := ((frViewTotales1.dsTiposIVA.DataTable) as IBizTipoIVA).IVA;
|
|
||||||
if FFactura.Cliente.RECARGO_EQUIVALENCIA = 1 then
|
|
||||||
Factura.RE := ((frViewTotales1.dsTiposIVA.DataTable) as IBizTipoIVA).RE
|
|
||||||
else
|
|
||||||
Factura.RE := 0;
|
|
||||||
|
|
||||||
//Desactivado porque en presupuestos no utilizan el catálogo de clientes
|
|
||||||
// Si la factura tiene detalles hay que mirar si los descuentos y otros campos
|
|
||||||
// para los artículos hay que cambiarlos.
|
|
||||||
// if (FFactura.Detalles.RecordCount > 0) then
|
|
||||||
// FController.DetallesController.ActualizarDetalles(FFactura.Detalles, FFactura.Cliente);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.pgPaginasChanging(Sender: TObject;
|
|
||||||
var AllowChange: Boolean);
|
|
||||||
var
|
|
||||||
ACadena : String;
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
|
|
||||||
if (not Assigned(FFactura)) or (FFactura.ID_CLIENTE = ID_NULO) then
|
|
||||||
begin
|
|
||||||
if FFactura.TIPO = CTE_TIPO_FACTURA then
|
|
||||||
ACadena := 'Antes debe elegir un cliente para esta factura'
|
|
||||||
else
|
|
||||||
ACadena := 'Antes debe elegir un cliente para este abono';
|
|
||||||
ShowWarningMessage(ACadena);
|
|
||||||
AllowChange := False;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.PonerTitulos(const ATitulo: string);
|
|
||||||
var
|
|
||||||
FTitulo : String;
|
|
||||||
begin
|
|
||||||
FTitulo := ATitulo;
|
|
||||||
if (FTitulo = '') and Assigned(Factura) then
|
|
||||||
begin
|
|
||||||
if Factura.EsNuevo then
|
|
||||||
if Factura.TIPO = CTE_TIPO_FACTURA then
|
|
||||||
FTitulo := 'Nueva factura de cliente'
|
|
||||||
else
|
|
||||||
FTitulo := 'Nuevo abono a cliente'
|
|
||||||
else
|
|
||||||
if Factura.TIPO = CTE_TIPO_FACTURA then
|
|
||||||
FTitulo := 'Factura de cliente' + ' - ' + FFactura.Cliente.Nombre
|
|
||||||
else
|
|
||||||
FTitulo := 'Abono a cliente' + ' - ' + FFactura.Cliente.Nombre
|
|
||||||
end;
|
|
||||||
|
|
||||||
inherited PonerTitulos(FTitulo);
|
|
||||||
|
|
||||||
Self.Caption := FTitulo + ' (' + AppFactuGES.EmpresaActiva.NOMBRE + ')';
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.PrevisualizarInterno;
|
|
||||||
var
|
|
||||||
AVerSello: Boolean;
|
|
||||||
AVerCopia: Boolean;
|
|
||||||
AllItems: Boolean;
|
|
||||||
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
AllItems := False;
|
|
||||||
AVerSello := True;
|
|
||||||
AVerCopia := True;
|
|
||||||
|
|
||||||
//Preguntamos si desea que en las facturas se vea el Sello
|
|
||||||
if ElegirOpcionesImpresionFacturaCliente(AVerSello, AVerCopia) then
|
|
||||||
FController.Preview(FFactura, AllItems, AVerSello, AVerCopia);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.RecalcularPortePorUnidad;
|
|
||||||
begin
|
|
||||||
//Esta lógica se llamará en el editor porque es para facilitar el rellenado de información del documento
|
|
||||||
//no puede ir en la clase de negocio porque no es una lógica que tenga sentido fuera del editor.
|
|
||||||
if Assigned(Controller)
|
|
||||||
and Assigned(Controller.DetallesController) then
|
|
||||||
Controller.DetallesController.DesglosarPorteDetalles(FFactura.IMPORTE_PORTE, FFactura.Detalles)
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.SetController(const Value: IFacturasClienteController);
|
|
||||||
begin
|
|
||||||
FController := Value;
|
|
||||||
|
|
||||||
if Assigned(FController) then
|
|
||||||
begin
|
|
||||||
ViewFacturaCliente.Controller := FController;
|
|
||||||
frViewDetallesFacturaCliente1.Controller := Controller.DetallesController;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.SetFactura(const Value: IBizFacturaCliente);
|
|
||||||
begin
|
|
||||||
FFactura := Value;
|
|
||||||
|
|
||||||
if Assigned(FFactura) then
|
|
||||||
begin
|
|
||||||
dsDataTable.DataTable := FFactura.DataTable;
|
|
||||||
frViewTotales1.DADataSource.DataTable := FFactura.DataTable;
|
|
||||||
|
|
||||||
FTiposIVA := FTiposIVAController.BuscarTodos;
|
|
||||||
frViewTotales1.dsTiposIVA.DataTable := FTiposIVA.DataTable;
|
|
||||||
FTiposIVA.DataTable.Active := True;
|
|
||||||
|
|
||||||
if Assigned(FViewFactura) then
|
|
||||||
begin
|
|
||||||
ViewFacturaCliente.ViewClienteFactura.OnClienteChanged := NIL;
|
|
||||||
try
|
|
||||||
FViewFactura.Factura := FFactura;
|
|
||||||
frViewDetallesFacturaCliente1.Detalles := FFactura.Detalles;
|
|
||||||
frViewDetallesFacturaCliente1.Factura := FFactura; //Para poder sacar los descuento del articulos segun el cliente seleccionado
|
|
||||||
finally
|
|
||||||
ViewFacturaCliente.ViewClienteFactura.OnClienteChanged := OnClienteChanged;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end
|
|
||||||
else begin
|
|
||||||
ViewFacturaCliente.ViewClienteFactura.OnClienteChanged := NIL;
|
|
||||||
dsDataTable.DataTable := NIL;
|
|
||||||
frViewTotales1.DADataSource.DataTable := NIL;
|
|
||||||
frViewTotales1.dsTiposIVA.DataTable := NIL;
|
|
||||||
end
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorFacturaCliente.SetViewFactura(const Value: IViewFacturaCliente);
|
|
||||||
begin
|
|
||||||
FViewFactura := Value;
|
|
||||||
|
|
||||||
if Assigned(FViewFactura) and Assigned(Factura) then
|
|
||||||
FViewFactura.Factura := Factura;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -397,13 +397,12 @@ var
|
|||||||
Respuesta : Integer;
|
Respuesta : Integer;
|
||||||
AFacturas: IBizFacturaCliente;
|
AFacturas: IBizFacturaCliente;
|
||||||
AllItems: Boolean;
|
AllItems: Boolean;
|
||||||
AVerSello: Boolean;
|
AMarca: Integer;
|
||||||
AVerCopia: Boolean;
|
|
||||||
begin
|
begin
|
||||||
AFacturas := Nil;
|
AFacturas := Nil;
|
||||||
AllItems := False;
|
AllItems := False;
|
||||||
AVerSello := True;
|
AMarca := 0;
|
||||||
AVerCopia := True;
|
|
||||||
|
|
||||||
if MultiSelect and Assigned(ViewGrid) then
|
if MultiSelect and Assigned(ViewGrid) then
|
||||||
AllItems := (ViewGrid.NumSeleccionados > 1);
|
AllItems := (ViewGrid.NumSeleccionados > 1);
|
||||||
@ -430,9 +429,9 @@ begin
|
|||||||
AFacturas := Facturas;
|
AFacturas := Facturas;
|
||||||
|
|
||||||
//Preguntamos si desea que en las facturas se vea el Sello
|
//Preguntamos si desea que en las facturas se vea el Sello
|
||||||
if ElegirOpcionesImpresionFacturaCliente(AVerSello, AVerCopia) then
|
if ElegirOpcionesImpresionFacturaCliente(AMarca) then
|
||||||
if Assigned(AFacturas) then
|
if Assigned(AFacturas) then
|
||||||
FController.Preview(AFacturas, AllItems, AVerSello, AVerCopia);
|
FController.Preview(AFacturas, AllItems, AMarca);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|||||||
@ -246,9 +246,7 @@
|
|||||||
</Parameter>
|
</Parameter>
|
||||||
<Parameter Name="ListaID" DataType="TIntegerArray" Flag="In" >
|
<Parameter Name="ListaID" DataType="TIntegerArray" Flag="In" >
|
||||||
</Parameter>
|
</Parameter>
|
||||||
<Parameter Name="VerSello" DataType="Boolean" Flag="In" >
|
<Parameter Name="Marca" DataType="Integer" Flag="In" >
|
||||||
</Parameter>
|
|
||||||
<Parameter Name="VerCopia" DataType="Boolean" Flag="In" >
|
|
||||||
</Parameter>
|
</Parameter>
|
||||||
</Parameters>
|
</Parameters>
|
||||||
</Operation>
|
</Operation>
|
||||||
|
|||||||
@ -500,7 +500,7 @@ type
|
|||||||
{ IsrvFacturasCliente }
|
{ IsrvFacturasCliente }
|
||||||
IsrvFacturasCliente = interface(IDataAbstractService)
|
IsrvFacturasCliente = interface(IDataAbstractService)
|
||||||
['{56B4FFF0-AB1B-46B2-BA16-ABD5360F6311}']
|
['{56B4FFF0-AB1B-46B2-BA16-ABD5360F6311}']
|
||||||
function GenerarInforme(const ListaID: TIntegerArray; const VerSello: Boolean; const VerCopia: Boolean): Binary;
|
function GenerarInforme(const ListaID: TIntegerArray; const Marca: Integer): Binary;
|
||||||
function GenerarInformeEnWord(const ID: Integer; const VerSello: Boolean): Binary;
|
function GenerarInformeEnWord(const ID: Integer; const VerSello: Boolean): Binary;
|
||||||
function GenerarInformeEnPDF(const ListaID: TIntegerArray; const VerSello: Boolean): Binary;
|
function GenerarInformeEnPDF(const ListaID: TIntegerArray; const VerSello: Boolean): Binary;
|
||||||
end;
|
end;
|
||||||
@ -515,7 +515,7 @@ type
|
|||||||
protected
|
protected
|
||||||
function __GetInterfaceName:string; override;
|
function __GetInterfaceName:string; override;
|
||||||
|
|
||||||
function GenerarInforme(const ListaID: TIntegerArray; const VerSello: Boolean; const VerCopia: Boolean): Binary;
|
function GenerarInforme(const ListaID: TIntegerArray; const Marca: Integer): Binary;
|
||||||
function GenerarInformeEnWord(const ID: Integer; const VerSello: Boolean): Binary;
|
function GenerarInformeEnWord(const ID: Integer; const VerSello: Boolean): Binary;
|
||||||
function GenerarInformeEnPDF(const ListaID: TIntegerArray; const VerSello: Boolean): Binary;
|
function GenerarInformeEnPDF(const ListaID: TIntegerArray; const VerSello: Boolean): Binary;
|
||||||
end;
|
end;
|
||||||
@ -1657,14 +1657,13 @@ begin
|
|||||||
result := 'srvFacturasCliente';
|
result := 'srvFacturasCliente';
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TsrvFacturasCliente_Proxy.GenerarInforme(const ListaID: TIntegerArray; const VerSello: Boolean; const VerCopia: Boolean): Binary;
|
function TsrvFacturasCliente_Proxy.GenerarInforme(const ListaID: TIntegerArray; const Marca: Integer): 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(FactuGES_Intf.TIntegerArray), ListaID, []);
|
__Message.Write('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
|
||||||
__Message.Write('VerSello', TypeInfo(Boolean), VerSello, []);
|
__Message.Write('Marca', TypeInfo(Integer), Marca, []);
|
||||||
__Message.Write('VerCopia', TypeInfo(Boolean), VerCopia, []);
|
|
||||||
__Message.Finalize;
|
__Message.Finalize;
|
||||||
|
|
||||||
__TransportChannel.Dispatch(__Message);
|
__TransportChannel.Dispatch(__Message);
|
||||||
|
|||||||
@ -762,11 +762,10 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TsrvFacturasCliente_Invoker.Invoke_GenerarInforme(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 GenerarInforme(const ListaID: TIntegerArray; const VerSello: Boolean; const VerCopia: Boolean): Binary; }
|
{ function GenerarInforme(const ListaID: TIntegerArray; const Marca: Integer): Binary; }
|
||||||
var
|
var
|
||||||
ListaID: FactuGES_Intf.TIntegerArray;
|
ListaID: FactuGES_Intf.TIntegerArray;
|
||||||
VerSello: Boolean;
|
Marca: Integer;
|
||||||
VerCopia: Boolean;
|
|
||||||
lResult: Binary;
|
lResult: Binary;
|
||||||
__lObjectDisposer: TROObjectDisposer;
|
__lObjectDisposer: TROObjectDisposer;
|
||||||
begin
|
begin
|
||||||
@ -774,10 +773,9 @@ begin
|
|||||||
lResult := nil;
|
lResult := nil;
|
||||||
try
|
try
|
||||||
__Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
|
__Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
|
||||||
__Message.Read('VerSello', TypeInfo(Boolean), VerSello, []);
|
__Message.Read('Marca', TypeInfo(Integer), Marca, []);
|
||||||
__Message.Read('VerCopia', TypeInfo(Boolean), VerCopia, []);
|
|
||||||
|
|
||||||
lResult := (__Instance as IsrvFacturasCliente).GenerarInforme(ListaID, VerSello, VerCopia);
|
lResult := (__Instance as IsrvFacturasCliente).GenerarInforme(ListaID, Marca);
|
||||||
|
|
||||||
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvFacturasCliente', 'GenerarInformeResponse');
|
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvFacturasCliente', 'GenerarInformeResponse');
|
||||||
__Message.Write('Result', TypeInfo(Binary), lResult, []);
|
__Message.Write('Result', TypeInfo(Binary), lResult, []);
|
||||||
|
|||||||
Binary file not shown.
Reference in New Issue
Block a user