#405: No deja meter decimales en el aumento general de presupuestos, albaranes

#414: Poder elegir el sello de paco u oscar en presupuesto de cliente de la empresa tecsitel

Version 1.8.3


git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/trunk@1011 0c75b7a4-871f-7646-8a2f-f78d34cc349f
This commit is contained in:
roberto 2010-07-12 18:03:50 +00:00
parent 17531b78bd
commit 40eccae05b
34 changed files with 2706 additions and 192 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

View File

@ -45,6 +45,12 @@
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="PackageDescription">Libreria base de FactuGES</Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">False</Package_Options></Package_Options><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">0</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dclofficexp100.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
</Excluded_Packages><Source><Source Name="MainSource">Base.dpk</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>

Binary file not shown.

View File

@ -53,7 +53,7 @@
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>VCLApplication</Borland.ProjectType>
<BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Language><Language Name="RootDir">C:\Archivos de programa\Borland\Delphi7\Bin\</Language></Language><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">8</VersionInfo><VersionInfo Name="Release">2</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">Rodax Software S.L.</VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.8.2.0</VersionInfoKeys><VersionInfoKeys Name="InternalName">FactuGES</VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName">FactuGES</VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.8.2.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Excluded_Packages></Excluded_Packages><Source><Source Name="MainSource">FactuGES.dpr</Source></Source></Delphi.Personality><ModelSupport>False</ModelSupport></BorlandProject></BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Language><Language Name="RootDir">C:\Archivos de programa\Borland\Delphi7\Bin\</Language></Language><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">8</VersionInfo><VersionInfo Name="Release">3</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">Rodax Software S.L.</VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.8.3.0</VersionInfoKeys><VersionInfoKeys Name="InternalName">FactuGES</VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName">FactuGES</VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.8.3.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Excluded_Packages></Excluded_Packages><Source><Source Name="MainSource">FactuGES.dpr</Source></Source></Delphi.Personality><ModelSupport>False</ModelSupport></BorlandProject></BorlandProject>
</ProjectExtensions>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
<ItemGroup>

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

View File

@ -10,7 +10,7 @@ implementation
uses
uEditorRegistryUtils, uEditorFacturasCliente, uEditorFacturaCliente,
uEditorFacturasClienteReport, uEditorElegirArticulosFacturaCliente,
uEditorElegirFacturasCliente;
uEditorElegirFacturasCliente, uDialogOpcionesImpresionFacturasCliente;
procedure RegisterViews;
begin
@ -19,6 +19,7 @@ begin
EditorRegistry.RegisterClass(TfEditorElegirArticulosFacturaCliente, 'EditorElegirArticulosFacturaCliente');
EditorRegistry.RegisterClass(TfEditorElegirFacturasCliente, 'EditorElegirFacturasCliente');
EditorRegistry.RegisterClass(TfEditorFacturasClientePreview, 'EditorFacturasClientePreview');
EditorRegistry.RegisterClass(TfDialogOpcionesImpresionFacturasCliente, 'DialogOpcionesImpresionFacturasCliente');
end;
procedure UnregisterViews;
@ -26,8 +27,9 @@ begin
EditorRegistry.UnRegisterClass(TfEditorFacturasCliente);
EditorRegistry.UnRegisterClass(TfEditorFacturaCliente);
EditorRegistry.UnRegisterClass(TfEditorElegirArticulosFacturaCliente);
EditorRegistry.UnRegisterClass(TfEditorElegirFacturasCliente);
EditorRegistry.UnRegisterClass(TfEditorElegirFacturasCliente);
EditorRegistry.UnRegisterClass(TfEditorFacturasClientePreview);
EditorRegistry.UnRegisterClass(TfDialogOpcionesImpresionFacturasCliente);
end;
end.

View File

@ -57,8 +57,8 @@ type
function EsModificable(APresupuesto : IBizPresupuestoCliente): Boolean;
function EsEliminable(APresupuesto : IBizPresupuestoCliente): Boolean;
procedure Preview(APresupuesto : IBizPresupuestoCliente; AllItems: Boolean = false);
procedure Print(APresupuesto : IBizPresupuestoCliente; AllItems: Boolean = false);
procedure Preview(APresupuesto : IBizPresupuestoCliente; AllItems: Boolean = false; Const AVerSello: Integer = 1);
procedure Print(APresupuesto : IBizPresupuestoCliente; AllItems: Boolean = false; Const AVerSello: Integer = 1);
function GenerarCertificados(APresupuesto : IBizPresupuestoCliente; AllItems: Boolean = false): Boolean;
function CambiarSituacion(APresupuesto : IBizPresupuestoCliente; Situacion: String; FechaDecision: TDateTime; AllItems: Boolean = false): Boolean;
@ -140,8 +140,8 @@ type
function EsModificable(APresupuesto : IBizPresupuestoCliente): Boolean;
function EsEliminable(APresupuesto : IBizPresupuestoCliente): Boolean;
procedure Preview(APresupuesto : IBizPresupuestoCliente; AllItems: Boolean = false);
procedure Print(APresupuesto : IBizPresupuestoCliente; AllItems: Boolean = false);
procedure Preview(APresupuesto : IBizPresupuestoCliente; AllItems: Boolean = false; Const AVerSello: Integer = 1);
procedure Print(APresupuesto : IBizPresupuestoCliente; AllItems: Boolean = false; Const AVerSello: Integer = 1);
function GenerarCertificados(APresupuesto : IBizPresupuestoCliente; AllItems: Boolean = false): Boolean;
function CambiarSituacion(APresupuesto : IBizPresupuestoCliente; Situacion: String; FechaDecision: TDateTime; AllItems: Boolean = false): Boolean;
@ -1049,7 +1049,7 @@ begin
}
end;
procedure TPresupuestosClienteController.Preview(APresupuesto: IBizPresupuestoCliente; AllItems: Boolean = false);
procedure TPresupuestosClienteController.Preview(APresupuesto: IBizPresupuestoCliente; AllItems: Boolean = false; Const AVerSello: Integer = 1);
var
AReportController : IPresupuestosClienteReportController;
ID_Presupuestos: TIntegerList;
@ -1075,14 +1075,14 @@ begin
else
ID_Presupuestos.Add(APresupuesto.ID);
AReportController.Preview(ID_Presupuestos);
AReportController.Preview(ID_Presupuestos, AVerSello);
finally
AReportController := NIL;
FreeAndNil(ID_Presupuestos);
end;
end;
procedure TPresupuestosClienteController.Print(APresupuesto: IBizPresupuestoCliente; AllItems: Boolean = false);
procedure TPresupuestosClienteController.Print(APresupuesto: IBizPresupuestoCliente; AllItems: Boolean = false; Const AVerSello: Integer= 1);
var
AReportController : IPresupuestosClienteReportController;
ID_Presupuestos: TIntegerList;
@ -1107,7 +1107,7 @@ begin
else
ID_Presupuestos.Add(APresupuesto.ID);
AReportController.Print(ID_Presupuestos);
AReportController.Print(ID_Presupuestos, AVerSello);
finally
AReportController := NIL;

View File

@ -10,10 +10,10 @@ uses
type
IPresupuestosClienteReportController = interface(IControllerBase)
['{41AE4B36-6114-4DDE-8BCF-288AA0E12449}']
procedure Preview(const AListaID : TIntegerList);
procedure Print(const AListaID : TIntegerList);
function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean;
function ExportToPDF(const AID: Integer; const AFileName : String = ''): Boolean;
procedure Preview(const AListaID : TIntegerList; Const AVerSello: Integer);
procedure Print(const AListaID : TIntegerList; Const AVerSello: Integer);
function ExportToWord(const AID: Integer; const AFileName : String = ''; Const AVerSello: Integer=1): Boolean;
function ExportToPDF(const AID: Integer; const AFileName : String = ''; Const AVerSello: Integer=1): Boolean;
function GenerarCertificados(const AID: Integer; const AFileName : String): Boolean;
end;
@ -25,10 +25,10 @@ type
constructor Create; override;
destructor Destroy; override;
procedure Preview(const AListaID : TIntegerList);
procedure Print(const AListaID : TIntegerList);
function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean;
function ExportToPDF(const AID: Integer; const AFileName : String = ''): Boolean;
procedure Preview(const AListaID : TIntegerList; Const AVerSello: Integer);
procedure Print(const AListaID : TIntegerList; Const AVerSello: Integer);
function ExportToWord(const AID: Integer; const AFileName : String = ''; Const AVerSello: Integer=1): Boolean;
function ExportToPDF(const AID: Integer; const AFileName : String = ''; Const AVerSello: Integer=1): Boolean;
function GenerarCertificados(const AID: Integer; const AFileName : String): Boolean;
end;
@ -61,8 +61,7 @@ begin
inherited;
end;
function TPresupuestosClienteReportController.ExportToPDF(const AID: Integer;
const AFileName: String): Boolean;
function TPresupuestosClienteReportController.ExportToPDF(const AID: Integer; const AFileName: String; Const AVerSello: Integer): Boolean;
var
AStream: Binary;
begin
@ -72,7 +71,7 @@ begin
ShowHourglassCursor;
try
AStream := FDataModule.GetRptPDFPresupuesto(AID);
AStream := FDataModule.GetRptPDFPresupuesto(AID, AVerSello);
try
AStream.SaveToFile(AFileName);
Result := True;
@ -84,7 +83,7 @@ begin
end;
end;
function TPresupuestosClienteReportController.ExportToWord(const AID: Integer; const AFileName : String) : Boolean;
function TPresupuestosClienteReportController.ExportToWord(const AID: Integer; const AFileName : String; Const AVerSello: Integer) : Boolean;
var
AStream: Binary;
AFile : String;
@ -96,7 +95,7 @@ begin
ShowHourglassCursor;
try
AStream := FDataModule.GetRptWordPresupuesto(AID);
AStream := FDataModule.GetRptWordPresupuesto(AID, AVerSello);
try
AStream.SaveToFile(AFile);
Result := True;
@ -134,7 +133,7 @@ begin
end;
end;
procedure TPresupuestosClienteReportController.Preview(const AListaID : TIntegerList);
procedure TPresupuestosClienteReportController.Preview(const AListaID : TIntegerList; Const AVerSello: Integer);
var
AStream: Binary;
AEditor : IEditorPresupuestosClientePreview;
@ -143,7 +142,7 @@ begin
ShowHourglassCursor;
try
AStream := FDataModule.GetRptPresupuestos(AListaID);
AStream := FDataModule.GetRptPresupuestos(AListaID, AVerSello);
try
CreateEditor('EditorPresupuestosClientePreview', IEditorPresupuestosClientePreview, AEditor);
if Assigned(AEditor) then
@ -167,16 +166,16 @@ begin
end;
end;
procedure TPresupuestosClienteReportController.Print(const AListaID : TIntegerList);
procedure TPresupuestosClienteReportController.Print(const AListaID : TIntegerList; Const AVerSello: Integer);
var
AStream: Binary;
AEditor : IEditorPresupuestosClientePreview;
begin
AEditor := NIL;
ShowHourglassCursor;
try
AStream := FDataModule.GetRptPresupuestos(AListaID);
AStream := FDataModule.GetRptPresupuestos(AListaID, AVerSello);
try
CreateEditor('EditorPresupuestosClientePreview', IEditorPresupuestosClientePreview, AEditor);
if Assigned(AEditor) then

View File

@ -14,12 +14,12 @@ inherited DataModulePresupuestosCliente: TDataModulePresupuestosCliente
Top = 84
end
object rda_PresupuestosCliente: TDARemoteDataAdapter
DataStreamer = Bin2DataStreamer
GetSchemaCall.RemoteService = RORemoteService
GetDataCall.RemoteService = RORemoteService
UpdateDataCall.RemoteService = RORemoteService
GetScriptsCall.RemoteService = RORemoteService
RemoteService = RORemoteService
DataStreamer = Bin2DataStreamer
Left = 59
Top = 151
end
@ -246,8 +246,6 @@ inherited DataModulePresupuestosCliente: TDataModulePresupuestosCliente
Params = <>
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteDataAdapter = rda_PresupuestosCliente
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
LogicalName = 'PresupuestosCliente'
IndexDefs = <>
Left = 248
@ -368,8 +366,6 @@ inherited DataModulePresupuestosCliente: TDataModulePresupuestosCliente
MasterSource = ds_PresupuestosCliente
MasterFields = 'ID'
DetailFields = 'ID_PRESUPUESTO'
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
LogicalName = 'PresupuestosCliente_Detalles'
IndexDefs = <>
Left = 464
@ -399,8 +395,6 @@ inherited DataModulePresupuestosCliente: TDataModulePresupuestosCliente
Params = <>
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteDataAdapter = rda_PresupuestosCliente
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
LogicalName = 'ListaAnosPresupuestos'
IndexDefs = <>
Left = 248

View File

@ -41,10 +41,10 @@ type
function NewItem : IBizPresupuestoCliente;
// Report
function GetRptPresupuestos(const AListaID: TIntegerList): Binary;
function GetRptWordPresupuesto(const AID: Integer): Binary;
function GetRptPresupuestos(const AListaID: TIntegerList; Const AVerSello: Integer): Binary;
function GetRptWordPresupuesto(const AID: Integer; Const AVerSello: Integer): Binary;
function GetRptWordCertificadoTrabajos(const AID: Integer): Binary;
function GetRptPDFPresupuesto(const AID: Integer): Binary;
function GetRptPDFPresupuesto(const AID: Integer; Const AVerSello: Integer): Binary;
function GetAnosItems : TStringList;
end;
@ -70,27 +70,26 @@ begin
RORemoteService.Message := dmConexion.Message;
end;
function TDataModulePresupuestosCliente.GetRptPDFPresupuesto(
const AID: Integer): Binary;
function TDataModulePresupuestosCliente.GetRptPDFPresupuesto(const AID: Integer; Const AVerSello: Integer): Binary;
var
AParam : TIntegerArray;
begin
AParam := TIntegerArray.Create;
try
AParam.Add(AID);
Result := (RORemoteService as IsrvPresupuestosCliente).GenerarInformeEnPDF(AParam)
Result := (RORemoteService as IsrvPresupuestosCliente).GenerarInformeEnPDF(AParam, AVerSello)
finally
FreeANDNIL(AParam)
end;
end;
function TDataModulePresupuestosCliente.GetRptPresupuestos(const AListaID: TIntegerList): Binary;
function TDataModulePresupuestosCliente.GetRptPresupuestos(const AListaID: TIntegerList; Const AVerSello: Integer): Binary;
var
AParam : TIntegerArray;
begin
AParam := AListaID.ToIntegerArray;
try
Result := (RORemoteService as IsrvPresupuestosCliente).GenerarInforme(AParam)
Result := (RORemoteService as IsrvPresupuestosCliente).GenerarInforme(AParam, AVerSello)
finally
FreeANDNIL(AParam)
end;
@ -102,10 +101,9 @@ begin
Result := (RORemoteService as IsrvPresupuestosCliente).GenerarCertificadoTrabajosEnWord(AID)
end;
function TDataModulePresupuestosCliente.GetRptWordPresupuesto(
const AID: Integer): Binary;
function TDataModulePresupuestosCliente.GetRptWordPresupuesto(const AID: Integer; Const AVerSello: Integer): Binary;
begin
Result := (RORemoteService as IsrvPresupuestosCliente).GenerarInformeEnWord(AID)
Result := (RORemoteService as IsrvPresupuestosCliente).GenerarInformeEnWord(AID, AVerSello)
end;
function TDataModulePresupuestosCliente.NewItem: IBizPresupuestoCliente;

View File

@ -8,10 +8,10 @@ uses
type
IDataModulePresupuestosClienteReport = interface
['{70CEBB06-376F-4363-B80F-DDA4324E0F85}']
function GetRptPresupuestos(const AListaID: TIntegerList): Binary;
function GetRptWordPresupuesto(const AID: Integer): Binary;
function GetRptPresupuestos(const AListaID: TIntegerList; Const AVerSello: Integer): Binary;
function GetRptWordPresupuesto(const AID: Integer; Const AVerSello: Integer): Binary;
function GetRptWordCertificadoTrabajos(const AID: Integer): Binary;
function GetRptPDFPresupuesto(const AID: Integer): Binary;
function GetRptPDFPresupuesto(const AID: Integer; Const AVerSello: Integer): Binary;
end;
implementation

View File

@ -95,18 +95,18 @@ type
FListaNombresClientes: TStringList;
FImporteMinimo: Currency;
FDesglosado : Boolean;
procedure _GenerarPresupuesto(const AID : Integer);
procedure _GenerarPresupuesto(const AID : Integer; const VerSello: Integer);
procedure PrepararTablaInforme(ATabla: TDAMemDataTable);
procedure PrepararTablaResumenInforme(ATabla: IDADataset);
function _GenerarInforme(const TipoInforme: String): Binary;
procedure IniciarParametrosInforme;
procedure RecuperarNombresClientes;
procedure RecuperarNombresClientes;
public
function GenerarPresupuesto(const ListaID : TIntegerArray): Binary;
function GenerarPresupuestoEnPDF(const ListaID : TIntegerArray): Binary;
function GenerarPresupuesto(const ListaID : TIntegerArray; const VerSello: Integer): Binary;
function GenerarPresupuestoEnPDF(const ListaID : TIntegerArray; const VerSello: Integer): Binary;
function GenerarInformeListadoPresupuestos(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
end;
@ -157,7 +157,7 @@ begin
end;
end;
function TRptPresupuestosCliente.GenerarPresupuestoEnPDF(const ListaID: TIntegerArray): Binary;
function TRptPresupuestosCliente.GenerarPresupuestoEnPDF(const ListaID: TIntegerArray; const VerSello: Integer): Binary;
var
i: Integer;
begin
@ -165,7 +165,7 @@ begin
try
//Vamos generando todos y cada uno de los presupuestos recibidos
for i := 0 to ListaID.Count - 1 do
_GenerarPresupuesto(ListaID.Items[i]);
_GenerarPresupuesto(ListaID.Items[i], VerSello);
frxPDFExport1.Stream := Result;
frxReport.Export(frxPDFExport1)
@ -494,7 +494,7 @@ begin
end;
end;
function TRptPresupuestosCliente.GenerarPresupuesto(const ListaID: TIntegerArray): Binary;
function TRptPresupuestosCliente.GenerarPresupuesto(const ListaID: TIntegerArray; const VerSello: Integer): Binary;
var
i: Integer;
begin
@ -502,7 +502,7 @@ begin
try
//Vamos generando todos y cada uno de los presupuestos recibidos
for i := 0 to ListaID.Count - 1 do
_GenerarPresupuesto(ListaID.Items[i]);
_GenerarPresupuesto(ListaID.Items[i], VerSello);
frxReport.PreviewPages.SaveToStream(Result);
finally
@ -526,7 +526,7 @@ begin
frxReport.PreviewPages.SaveToStream(Result);
end;
procedure TRptPresupuestosCliente._GenerarPresupuesto(const AID: Integer);
procedure TRptPresupuestosCliente._GenerarPresupuesto(const AID: Integer; const VerSello: Integer);
var
AInforme: Variant;
begin
@ -555,6 +555,9 @@ begin
raise Exception.Create (('Error Servidor: _GenerarPresupuesto, no encuentra informe ' + rptInforme));
frxReport.LoadFromFile(AInforme, True);
frxReport.Variables.Variables['VerSello'] := IntToStr(VerSello);
frxReport.AddFunction('function PONERJUSTIFICACIONCOMPLETA(ARTFText : String): String', 'User Function','');
frxReport.PrepareReport(False);
finally

View File

@ -37,6 +37,7 @@ type
FCodigoPresupuesto : string;
FNombreFichero : String;
ListaCapitulos : array[1..1000] of TCapitulo;
FVerSello: Integer;
procedure InsertarConceptos(Tabla : Table);
function Generar : Boolean;
function RellenarPortada : boolean; virtual;
@ -47,7 +48,7 @@ type
public
constructor Create (AOwner : TComponent); override;
destructor Destroy; override;
function Exportar(Codigo, Fichero : String): Boolean;
function Exportar(Codigo, Fichero : String; const VerSello: Integer): Boolean;
end;
@ -69,6 +70,7 @@ begin
FDocumento := NIL;
FImportes := True;
FNumCapitulos := 0;
FVerSello:= 1;
end;
procedure TRptWordPresupuestoCliente.DataModuleCreate(Sender: TObject);
@ -86,13 +88,14 @@ begin
inherited;
end;
function TRptWordPresupuestoCliente.Exportar(Codigo, Fichero: String): Boolean;
function TRptWordPresupuestoCliente.Exportar(Codigo, Fichero: String; const VerSello: Integer): Boolean;
begin
if EsCadenaVacia(Fichero) then
RaiseError('Falta indicar el fichero donde se exportará el listado.');
FNombreFichero := Fichero;
FCodigoPresupuesto := Codigo;
FVerSello := VerSello;
_GenerarPresupuesto(Codigo);
Result := True;
end;
@ -246,7 +249,7 @@ begin
end;
end;
-------------------------------------- }
with FDocumento, tbl_Cabecera do
begin
if FieldByName('IMPORTE_BONIFICACION').AsFloat > 0 then
@ -265,6 +268,16 @@ begin
ReplaceBookmark('ContactoClienteCab', FieldByName('PERSONA_CONTACTO').AsString);
ReplaceBookmark('NombreClienteFirma', FieldByName('NOMBRE').AsString);
//Solo para la empresa de tecsitel se debe elegir uno u otra firma
//esto es un poco parche pero bueno
if (tbl_Cabecera.FieldByName('ID_EMPRESA').AsInteger = 1) then
begin
if (FVerSello = 1) then
ReplaceBookmark('Firma2', '')
else
ReplaceBookmark('Firma1', '');
end;
if not EsCadenaVacia(FieldByName('MEMORIA').AsString) then
begin
Texto := FieldByName('MEMORIA').AsString;

View File

@ -33,9 +33,9 @@ type
procedure DARemoteServiceCreate(Sender: TObject);
protected
{ IsrvPresupuestosCliente methods }
function GenerarInforme(const ListaID: TIntegerArray): Binary;
function GenerarInformeEnWord(const ID: Integer): Binary;
function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
function GenerarInforme(const ListaID: TIntegerArray; const VerSello: Integer): Binary;
function GenerarInformeEnWord(const ID: Integer; const VerSello: Integer): Binary;
function GenerarInformeEnPDF(const ListaID: TIntegerArray; const VerSello: Integer): Binary;
function GenerarCertificadoTrabajosEnWord(const ID: Integer): Binary;
end;
@ -101,32 +101,31 @@ begin
end;
end;
function TsrvPresupuestosCliente.GenerarInforme(const ListaID: TIntegerArray): Binary;
function TsrvPresupuestosCliente.GenerarInforme(const ListaID: TIntegerArray; const VerSello: Integer): Binary;
var
AReportGenerator : TRptPresupuestosCliente;
begin
AReportGenerator := TRptPresupuestosCliente.Create(nil);
try
Result := AReportGenerator.GenerarPresupuesto(ListaID);
Result := AReportGenerator.GenerarPresupuesto(ListaID, VerSello);
finally
FreeAndNIL(AReportGenerator);
end;
end;
function TsrvPresupuestosCliente.GenerarInformeEnPDF(
const ListaID: TIntegerArray): Binary;
function TsrvPresupuestosCliente.GenerarInformeEnPDF(const ListaID: TIntegerArray; const VerSello: Integer): Binary;
var
AReportGenerator : TRptPresupuestosCliente;
begin
AReportGenerator := TRptPresupuestosCliente.Create(nil);
try
Result := AReportGenerator.GenerarPresupuestoEnPDF(ListaID);
Result := AReportGenerator.GenerarPresupuestoEnPDF(ListaID, VerSello);
finally
FreeAndNIL(AReportGenerator);
end;
end;
function TsrvPresupuestosCliente.GenerarInformeEnWord(const ID: Integer): Binary;
function TsrvPresupuestosCliente.GenerarInformeEnWord(const ID: Integer; const VerSello: Integer): Binary;
var
AReportGenerator : TRptWordPresupuestoCliente;
AFicheroTMP : TFileName;
@ -136,7 +135,7 @@ begin
AReportGenerator := TRptWordPresupuestoCliente.Create(nil);
try
try
if AReportGenerator.Exportar(IntToStr(ID), AFicheroTMP) then
if AReportGenerator.Exportar(IntToStr(ID), AFicheroTMP, VerSello) then
begin
Result := Binary.Create;
Result.LoadFromFile(AFicheroTMP);

View File

@ -69,6 +69,7 @@ contains
uViewDatosYSeleccionClientePresupuesto in 'uViewDatosYSeleccionClientePresupuesto.pas' {frViewDatosYSeleccionClientePresupuesto: TFrame},
uViewTotalesPresupuesto in 'uViewTotalesPresupuesto.pas' {frViewTotalesPresupuesto: TFrame},
uEditorVariarPrecios in 'uEditorVariarPrecios.pas' {fEditorVariarPrecios},
uDialogListaPresupuestosEnvioEMail in 'uDialogListaPresupuestosEnvioEMail.pas' {fDialogListaPresupuestosEnvioEMail};
uDialogListaPresupuestosEnvioEMail in 'uDialogListaPresupuestosEnvioEMail.pas' {fDialogListaPresupuestosEnvioEMail},
uDialogOpcionesImpresionPresupuestosCliente in 'uDialogOpcionesImpresionPresupuestosCliente.pas' {fDialogOpcionesImpresionPresupuestosCliente};
end.

View File

@ -72,8 +72,9 @@
<DCCReference Include="RemObjects_Core_D11.dcp" />
<DCCReference Include="rtl.dcp" />
<DCCReference Include="uDialogListaPresupuestosEnvioEMail.pas">
<Form>fEditorVariarPrecios</Form>
<Form>fDialogListaPresupuestosEnvioEMail</Form>
</DCCReference>
<DCCReference Include="uDialogOpcionesImpresionPresupuestosCliente.pas" />
<DCCReference Include="uEditorElegirArticulosPresupuestoCliente.pas">
<Form>fEditorElegirArticulosPresupuestoCliente</Form>
<DesignClass>TfEditorElegirArticulosPedidoCliente</DesignClass>

View File

@ -0,0 +1,81 @@
unit uDialogOpcionesImpresionPresupuestosCliente;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uDialogBase, ActnList, StdCtrls, ExtCtrls, jpeg, dxGDIPlusClasses;
type
TfDialogOpcionesImpresionPresupuestosCliente = class(TfDialogBase)
Image1: TImage;
Image2: TImage;
procedure actAceptarExecute(Sender: TObject);
procedure actCancelarExecute(Sender: TObject);
procedure Image1DblClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Image2DblClick(Sender: TObject);
private
FVerSello: Integer;
public
{ Public declarations }
end;
function ElegirOpcionesImpresionPresupuestoCliente(var AVerSello : Integer): Boolean;
implementation
{$R *.dfm}
function ElegirOpcionesImpresionPresupuestoCliente(var AVerSello : Integer): Boolean;
var
AEditor : TfDialogOpcionesImpresionPresupuestosCliente;
begin
AEditor := TfDialogOpcionesImpresionPresupuestosCliente.Create(NIL);
try
Result := (AEditor.ShowModal = mrOk);
if Result then
begin
AVerSello := AEditor.FVerSello;
end;
finally
AEditor.Release;
end;
end;
procedure TfDialogOpcionesImpresionPresupuestosCliente.actAceptarExecute(Sender: TObject);
begin
inherited;
ModalResult := mrOk
end;
procedure TfDialogOpcionesImpresionPresupuestosCliente.actCancelarExecute(Sender: TObject);
begin
inherited;
ModalResult := mrCancel;
end;
procedure TfDialogOpcionesImpresionPresupuestosCliente.FormCreate(
Sender: TObject);
begin
inherited;
FVerSello := 1;
end;
procedure TfDialogOpcionesImpresionPresupuestosCliente.Image1DblClick(
Sender: TObject);
begin
inherited;
FVerSello := 1;
actAceptar.Execute;
end;
procedure TfDialogOpcionesImpresionPresupuestosCliente.Image2DblClick(
Sender: TObject);
begin
inherited;
FVerSello := 2;
actAceptar.Execute;
end;
end.

View File

@ -183,6 +183,10 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
object pagContenido: TTabSheet
Caption = 'Contenido'
ImageIndex = 1
ExplicitLeft = 0
ExplicitTop = 0
ExplicitWidth = 0
ExplicitHeight = 0
inline frViewDetallesPresupuestoCliente1: TfrViewDetallesPresupuestoCliente
Left = 0
Top = 0
@ -212,77 +216,82 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
inherited ToolButton4: TToolButton
Left = 278
Top = 0
Wrap = True
ExplicitLeft = 278
ExplicitTop = 0
end
inherited FontName: TJvFontComboBox
Left = 334
Top = 0
ExplicitLeft = 334
ExplicitTop = 0
end
inherited FontSize: TEdit [5]
Left = 479
Top = 0
Width = 200
ExplicitLeft = 479
ExplicitTop = 0
ExplicitWidth = 200
end
inherited ToolButton14: TToolButton [6]
Left = 679
Top = 0
Wrap = True
ExplicitLeft = 679
end
inherited UpDown1: TUpDown
inherited ToolButton14: TToolButton
Left = 0
Wrap = False
ExplicitLeft = 0
end
inherited FontName: TJvFontComboBox
Left = 65
Top = 22
ExplicitLeft = 65
ExplicitTop = 22
end
inherited FontSize: TEdit
Left = 210
Top = 22
Width = 200
ExplicitLeft = 210
ExplicitTop = 22
ExplicitWidth = 200
end
inherited UpDown1: TUpDown
Left = 410
Top = 22
ExplicitLeft = 410
ExplicitTop = 22
end
inherited ToolButton13: TToolButton
Left = 17
ExplicitLeft = 17
end
inherited ToolButton6: TToolButton [9]
Left = 25
Left = 427
Top = 22
ExplicitLeft = 25
ExplicitLeft = 427
ExplicitTop = 22
end
inherited ToolButton7: TToolButton [10]
Left = 91
inherited ToolButton6: TToolButton
Left = 435
Top = 22
Wrap = False
ExplicitLeft = 91
ExplicitLeft = 435
ExplicitTop = 22
end
inherited ToolButton8: TToolButton [11]
Left = 158
inherited ToolButton7: TToolButton
Left = 501
Top = 22
ExplicitLeft = 158
ExplicitLeft = 501
ExplicitTop = 22
end
inherited ToolButton12: TToolButton [12]
Left = 241
Wrap = False
ExplicitLeft = 241
ExplicitHeight = 22
end
inherited ToolButton9: TToolButton [13]
Left = 249
inherited ToolButton8: TToolButton
Left = 568
Top = 22
ExplicitLeft = 249
ExplicitLeft = 568
ExplicitTop = 22
end
inherited ToolButton10: TToolButton [14]
Left = 394
inherited ToolButton12: TToolButton
Left = 651
Top = 22
ExplicitLeft = 394
ExplicitLeft = 651
ExplicitTop = 22
end
inherited ToolButton11: TToolButton [15]
Left = 519
ExplicitLeft = 519
inherited ToolButton9: TToolButton
Left = 659
Top = 22
ExplicitLeft = 659
ExplicitTop = 22
end
inherited ToolButton10: TToolButton
Left = 804
Top = 22
ExplicitLeft = 804
ExplicitTop = 22
end
inherited ToolButton11: TToolButton
Left = 929
Top = 22
ExplicitLeft = 929
ExplicitTop = 22
end
end
inherited cxGrid: TcxGrid
@ -316,6 +325,10 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
object pagPortada: TTabSheet
Caption = 'Portada'
ImageIndex = 3
ExplicitLeft = 0
ExplicitTop = 0
ExplicitWidth = 0
ExplicitHeight = 0
object Panel1: TPanel
Left = 0
Top = 0
@ -448,6 +461,10 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
object pagMemoria: TTabSheet
Caption = 'Memoria'
ImageIndex = 4
ExplicitLeft = 0
ExplicitTop = 0
ExplicitWidth = 0
ExplicitHeight = 0
object Panel2: TPanel
Left = 0
Top = 0
@ -751,6 +768,10 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
object pagInicidencias: TTabSheet
Caption = 'Incidencias'
ImageIndex = 2
ExplicitLeft = 0
ExplicitTop = 0
ExplicitWidth = 0
ExplicitHeight = 0
inline frViewIncidenciasCli: TfrViewIncidencias
Left = 0
Top = 0
@ -854,28 +875,28 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
ExplicitWidth = 764
ExplicitHeight = 125
inherited Bevel3: TBevel
Left = 385
Left = 358
Top = 80
Height = 75
ExplicitLeft = 385
ExplicitLeft = 358
ExplicitTop = 80
ExplicitHeight = 75
end
inherited Bevel4: TBevel
Left = 497
Left = 470
Top = 122
Width = 147
ExplicitLeft = 497
Width = 192
ExplicitLeft = 470
ExplicitTop = 122
ExplicitWidth = 147
ExplicitWidth = 192
end
inherited Bevel1: TBevel
Left = 497
Left = 470
Top = 238
Width = 147
ExplicitLeft = 497
Width = 73
ExplicitLeft = 470
ExplicitTop = 238
ExplicitWidth = 147
ExplicitWidth = 73
end
inherited Bevel2: TBevel
Left = 130
@ -899,27 +920,27 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
Width = 87
end
inherited ImporteIVA: TcxDBCurrencyEdit
Left = 568
Left = 541
Top = 157
Style.LookAndFeel.SkinName = ''
Style.IsFontAssigned = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 568
ExplicitLeft = 541
ExplicitTop = 157
ExplicitWidth = 20
Width = 20
end
inherited ImporteTotal: TcxDBCurrencyEdit
Left = 498
Left = 471
Top = 211
Style.LookAndFeel.SkinName = ''
Style.IsFontAssigned = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 498
ExplicitLeft = 471
ExplicitTop = 211
ExplicitWidth = 90
Width = 90
@ -936,49 +957,49 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
ExplicitTop = 107
end
inherited edtIVA: TcxDBSpinEdit
Left = 497
Left = 470
Top = 157
Style.LookAndFeel.SkinName = ''
Style.IsFontAssigned = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 497
ExplicitLeft = 470
ExplicitTop = 157
end
inherited ImporteBase: TcxDBCurrencyEdit
Left = 497
Left = 470
Top = 80
Style.LookAndFeel.SkinName = ''
Style.IsFontAssigned = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 497
ExplicitLeft = 470
ExplicitTop = 80
ExplicitWidth = 91
Width = 91
end
inherited edtRE: TcxDBSpinEdit
Left = 497
Left = 470
Top = 184
Style.LookAndFeel.SkinName = ''
Style.IsFontAssigned = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 497
ExplicitLeft = 470
ExplicitTop = 184
end
inherited ImporteRE: TcxDBCurrencyEdit
Left = 568
Left = 541
Top = 184
Style.LookAndFeel.SkinName = ''
Style.IsFontAssigned = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 568
ExplicitLeft = 541
ExplicitTop = 184
ExplicitWidth = 20
Width = 20
@ -1022,9 +1043,9 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
Width = 20
end
inherited bTiposIVA: TButton
Left = 237
Left = 210
Top = 161
ExplicitLeft = 237
ExplicitLeft = 210
ExplicitTop = 161
end
inherited cbRecargoEquivalencia: TcxDBCheckBox
@ -1040,25 +1061,25 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
Width = 158
end
inherited edtRetencion: TcxDBSpinEdit
Left = 497
Left = 470
Top = 258
Style.LookAndFeel.SkinName = ''
Style.IsFontAssigned = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 497
ExplicitLeft = 470
ExplicitTop = 258
end
inherited edtImporteRetencion: TcxDBCurrencyEdit
Left = 568
Left = 541
Top = 258
Style.LookAndFeel.SkinName = ''
Style.IsFontAssigned = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 568
ExplicitLeft = 541
ExplicitTop = 258
ExplicitWidth = 20
Width = 20
@ -1085,6 +1106,7 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
ExplicitLeft = 21
ExplicitTop = 29
ExplicitWidth = 277
ExplicitHeight = 0
Width = 277
end
inherited eDescripcionBonificacion: TcxDBTextEdit
@ -1096,6 +1118,8 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 367
ExplicitTop = 29
ExplicitWidth = 325
Width = 325
end
inherited eImporteBonificacion: TcxDBCurrencyEdit
Left = 449

View File

@ -107,7 +107,8 @@ implementation
uses
uViewDatosYSeleccionCliente, uDataModuleUsuarios, uClientesController,
uBizDireccionesContacto, uDialogUtils, uFactuGES_App, uDataTableUtils;
uBizDireccionesContacto, uDialogUtils, uFactuGES_App, uDataTableUtils,
uDialogOpcionesImpresionPresupuestosCliente;
{$R *.dfm}
@ -296,10 +297,21 @@ begin
end;
procedure TfEditorPresupuestoCliente.ImprimirInterno;
var
AVerSello: Integer;
bPrevisualizar: Boolean;
begin
inherited;
if not Modified then
FController.Print(FPresupuesto);
bPrevisualizar := True;
if (AppFactuGES.EmpresaActiva.ID = 1) then
//Preguntamos si desea que en los presupuestos se vea el Sello de Paco u Oscar,
//solo para empresa Tecsitel
bPrevisualizar := ElegirOpcionesImpresionPresupuestoCliente(AVerSello);
if bPrevisualizar and Assigned(FPresupuesto) then
if not Modified then
FController.Print(FPresupuesto, False, AVerSello);
end;
procedure TfEditorPresupuestoCliente.OnClienteChanged(Sender: TObject);
@ -346,10 +358,21 @@ begin
end;
procedure TfEditorPresupuestoCliente.PrevisualizarInterno;
var
AVerSello: Integer;
bPrevisualizar: Boolean;
begin
inherited;
if not Modified then
FController.Preview(FPresupuesto);
bPrevisualizar := True;
if (AppFactuGES.EmpresaActiva.ID = 1) then
//Preguntamos si desea que en los presupuestos se vea el Sello de Paco u Oscar,
//solo para empresa Tecsitel
bPrevisualizar := ElegirOpcionesImpresionPresupuestoCliente(AVerSello);
if bPrevisualizar and Assigned(FPresupuesto) then
if not Modified then
FController.Preview(FPresupuesto, False, AVerSello);
end;
function TfEditorPresupuestoCliente.PuedoEnviar: Boolean;

View File

@ -2,7 +2,6 @@ inherited fEditorPresupuestosCliente: TfEditorPresupuestosCliente
Caption = 'Lista de presupuestos de cliente'
ClientWidth = 805
ExplicitWidth = 813
ExplicitHeight = 240
PixelsPerInch = 96
TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader

View File

@ -99,7 +99,7 @@ implementation
uses
uDataModulePresupuestosCliente, uDataModuleUsuarios, uFactuGES_App,
uEditorBase, uEditorDBBase, uDialogUtils, Dialogs,
uDBSelectionListUtils, uGridStatusUtils,
uDBSelectionListUtils, uGridStatusUtils, uDialogOpcionesImpresionPresupuestosCliente,
uGenerarFacturasCliPreCliUtils, uEditorFechaDecision,
// uBizAlbaranesCliente, uAlbaranesClienteController,
// uFacturasClienteController, uBizFacturasCliente,
@ -490,9 +490,12 @@ var
Respuesta : Integer;
APresupuestos: IBizPresupuestoCliente;
AllItems: Boolean;
AVerSello: Integer;
bPrevisualizar: Boolean;
begin
APresupuestos := Nil;
AllItems := False;
bPrevisualizar := True;
if MultiSelect and Assigned(ViewGrid) then
AllItems := (ViewGrid.NumSeleccionados > 1);
@ -518,8 +521,13 @@ begin
else
APresupuestos := Presupuestos;
if Assigned(APresupuestos) then
FController.Print(APresupuestos, AllItems);
if (AppFactuGES.EmpresaActiva.ID = 1) then
//Preguntamos si desea que en los presupuestos se vea el Sello de Paco u Oscar,
//solo para empresa Tecsitel
bPrevisualizar := ElegirOpcionesImpresionPresupuestoCliente(AVerSello);
if bPrevisualizar and Assigned(APresupuestos) then
FController.Print(APresupuestos, AllItems, AVerSello);
end;
end;
end;
@ -559,9 +567,12 @@ var
Respuesta : Integer;
APresupuestos: IBizPresupuestoCliente;
AllItems: Boolean;
AVerSello: Integer;
bPrevisualizar: Boolean;
begin
APresupuestos := Nil;
AllItems := False;
bPrevisualizar := True;
if MultiSelect and Assigned(ViewGrid) then
AllItems := (ViewGrid.NumSeleccionados > 1);
@ -587,8 +598,13 @@ begin
else
APresupuestos := Presupuestos;
if Assigned(APresupuestos) then
FController.Preview(APresupuestos, AllItems);
if (AppFactuGES.EmpresaActiva.ID = 1) then
//Preguntamos si desea que en los presupuestos se vea el Sello de Paco u Oscar,
//solo para empresa Tecsitel
bPrevisualizar := ElegirOpcionesImpresionPresupuestoCliente(AVerSello);
if bPrevisualizar and Assigned(APresupuestos) then
FController.Preview(APresupuestos, AllItems, AVerSello);
end;
end;
end;

View File

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

View File

@ -24,20 +24,31 @@ implementation
{$R *.dfm}
uses
uPresupuestosClienteReportController, uIntegerListUtils, uDialogUtils;
uPresupuestosClienteReportController, uIntegerListUtils, uDialogUtils,
uFactuGES_App, uDialogOpcionesImpresionPresupuestosCliente;
procedure TfEditorPresupuestosClientePreview.actExportarRTFExecute(
Sender: TObject);
procedure TfEditorPresupuestosClientePreview.actExportarRTFExecute(Sender: TObject);
var
I: Integer;
AVerSello: Integer;
bPrevisualizar: Boolean;
begin
bPrevisualizar := True;
// inherited; <- No llamar al padre
if not Assigned(Controller) then
raise Exception.Create('No se ha asignado el controlador necesario');
for I := 0 to ListaID.Count - 1 do
if (Controller as IPresupuestosClienteReportController).ExportToWord(ListaID[I]) then
ShowInfoMessage('El presupuesto se ha exportado correctamente.');
if (AppFactuGES.EmpresaActiva.ID = 1) then
//Preguntamos si desea que en los presupuestos se vea el Sello de Paco u Oscar,
//solo para empresa Tecsitel
bPrevisualizar := ElegirOpcionesImpresionPresupuestoCliente(AVerSello);
if bPrevisualizar then
for I := 0 to ListaID.Count - 1 do
if (Controller as IPresupuestosClienteReportController).ExportToWord(ListaID[I], '', AVerSello) then
ShowInfoMessage('El presupuesto se ha exportado correctamente.');
end;
end.

View File

@ -302,6 +302,8 @@
</Parameter>
<Parameter Name="ListaID" DataType="TIntegerArray" Flag="In" >
</Parameter>
<Parameter Name="VerSello" DataType="Integer" Flag="In" >
</Parameter>
</Parameters>
</Operation>
<Operation Name="GenerarInformeEnWord" UID="{7C3C767B-41AC-42EC-925D-ECAE03BD8F58}">
@ -310,6 +312,8 @@
</Parameter>
<Parameter Name="ID" DataType="Integer" Flag="In" >
</Parameter>
<Parameter Name="VerSello" DataType="Integer" Flag="In" >
</Parameter>
</Parameters>
</Operation>
<Operation Name="GenerarCertificadoTrabajosEnWord" UID="{F96E1E6B-131C-4F1F-BF2A-3E7B0B6ABF09}">
@ -326,6 +330,8 @@
</Parameter>
<Parameter Name="ListaID" DataType="TIntegerArray" Flag="In" >
</Parameter>
<Parameter Name="VerSello" DataType="Integer" Flag="In" >
</Parameter>
</Parameters>
</Operation>
</Operations>

View File

@ -542,10 +542,10 @@ type
{ IsrvPresupuestosCliente }
IsrvPresupuestosCliente = interface(IDataAbstractService)
['{8A06D5A7-8461-4F6E-8A8B-EC49C84C45D1}']
function GenerarInforme(const ListaID: TIntegerArray): Binary;
function GenerarInformeEnWord(const ID: Integer): Binary;
function GenerarInforme(const ListaID: TIntegerArray; const VerSello: Integer): Binary;
function GenerarInformeEnWord(const ID: Integer; const VerSello: Integer): Binary;
function GenerarCertificadoTrabajosEnWord(const ID: Integer): Binary;
function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
function GenerarInformeEnPDF(const ListaID: TIntegerArray; const VerSello: Integer): Binary;
end;
{ CosrvPresupuestosCliente }
@ -558,10 +558,10 @@ type
protected
function __GetInterfaceName:string; override;
function GenerarInforme(const ListaID: TIntegerArray): Binary;
function GenerarInformeEnWord(const ID: Integer): Binary;
function GenerarInforme(const ListaID: TIntegerArray; const VerSello: Integer): Binary;
function GenerarInformeEnWord(const ID: Integer; const VerSello: Integer): Binary;
function GenerarCertificadoTrabajosEnWord(const ID: Integer): Binary;
function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
function GenerarInformeEnPDF(const ListaID: TIntegerArray; const VerSello: Integer): Binary;
end;
{ IsrvPedidosProveedor }
@ -1757,12 +1757,13 @@ begin
result := 'srvPresupuestosCliente';
end;
function TsrvPresupuestosCliente_Proxy.GenerarInforme(const ListaID: TIntegerArray): Binary;
function TsrvPresupuestosCliente_Proxy.GenerarInforme(const ListaID: TIntegerArray; const VerSello: Integer): Binary;
begin
try
result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInforme');
__Message.Write('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
__Message.Write('VerSello', TypeInfo(Integer), VerSello, []);
__Message.Finalize;
__TransportChannel.Dispatch(__Message);
@ -1774,12 +1775,13 @@ begin
end
end;
function TsrvPresupuestosCliente_Proxy.GenerarInformeEnWord(const ID: Integer): Binary;
function TsrvPresupuestosCliente_Proxy.GenerarInformeEnWord(const ID: Integer; const VerSello: Integer): Binary;
begin
try
result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInformeEnWord');
__Message.Write('ID', TypeInfo(Integer), ID, []);
__Message.Write('VerSello', TypeInfo(Integer), VerSello, []);
__Message.Finalize;
__TransportChannel.Dispatch(__Message);
@ -1808,12 +1810,13 @@ begin
end
end;
function TsrvPresupuestosCliente_Proxy.GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary;
function TsrvPresupuestosCliente_Proxy.GenerarInformeEnPDF(const ListaID: TIntegerArray; const VerSello: Integer): Binary;
begin
try
result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInformeEnPDF');
__Message.Write('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
__Message.Write('VerSello', TypeInfo(Integer), VerSello, []);
__Message.Finalize;
__TransportChannel.Dispatch(__Message);

View File

@ -903,9 +903,10 @@ begin
end;
procedure TsrvPresupuestosCliente_Invoker.Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInforme(const ListaID: TIntegerArray): Binary; }
{ function GenerarInforme(const ListaID: TIntegerArray; const VerSello: Integer): Binary; }
var
ListaID: FactuGES_Intf.TIntegerArray;
VerSello: Integer;
lResult: Binary;
__lObjectDisposer: TROObjectDisposer;
begin
@ -913,8 +914,9 @@ begin
lResult := nil;
try
__Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
__Message.Read('VerSello', TypeInfo(Integer), VerSello, []);
lResult := (__Instance as IsrvPresupuestosCliente).GenerarInforme(ListaID);
lResult := (__Instance as IsrvPresupuestosCliente).GenerarInforme(ListaID, VerSello);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvPresupuestosCliente', 'GenerarInformeResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []);
@ -933,17 +935,19 @@ begin
end;
procedure TsrvPresupuestosCliente_Invoker.Invoke_GenerarInformeEnWord(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeEnWord(const ID: Integer): Binary; }
{ function GenerarInformeEnWord(const ID: Integer; const VerSello: Integer): Binary; }
var
ID: Integer;
VerSello: Integer;
lResult: Binary;
__lObjectDisposer: TROObjectDisposer;
begin
lResult := nil;
try
__Message.Read('ID', TypeInfo(Integer), ID, []);
__Message.Read('VerSello', TypeInfo(Integer), VerSello, []);
lResult := (__Instance as IsrvPresupuestosCliente).GenerarInformeEnWord(ID);
lResult := (__Instance as IsrvPresupuestosCliente).GenerarInformeEnWord(ID, VerSello);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvPresupuestosCliente', 'GenerarInformeEnWordResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []);
@ -989,9 +993,10 @@ begin
end;
procedure TsrvPresupuestosCliente_Invoker.Invoke_GenerarInformeEnPDF(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary; }
{ function GenerarInformeEnPDF(const ListaID: TIntegerArray; const VerSello: Integer): Binary; }
var
ListaID: FactuGES_Intf.TIntegerArray;
VerSello: Integer;
lResult: Binary;
__lObjectDisposer: TROObjectDisposer;
begin
@ -999,8 +1004,9 @@ begin
lResult := nil;
try
__Message.Read('ListaID', TypeInfo(FactuGES_Intf.TIntegerArray), ListaID, []);
__Message.Read('VerSello', TypeInfo(Integer), VerSello, []);
lResult := (__Instance as IsrvPresupuestosCliente).GenerarInformeEnPDF(ListaID);
lResult := (__Instance as IsrvPresupuestosCliente).GenerarInformeEnPDF(ListaID, VerSello);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvPresupuestosCliente', 'GenerarInformeEnPDFResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []);

Binary file not shown.

Binary file not shown.

View File

@ -35,7 +35,11 @@
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType />
<BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters><Parameters Name="RunParams">/standalone</Parameters></Parameters><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">8</VersionInfo><VersionInfo Name="Release">2</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.8.2.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.8.2.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys><VersionInfoKeys Name="CompileDate">jueves, 24 de junio de 2010 13:44</VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters><Parameters Name="RunParams">/standalone</Parameters></Parameters><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">8</VersionInfo><VersionInfo Name="Release">3</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.8.3.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.8.3.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys><VersionInfoKeys Name="CompileDate">jueves, 24 de junio de 2010 13:44</VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<Excluded_Packages Name="C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\dxPSCoreD11.bpl">ExpressPrinting System by Developer Express Inc.</Excluded_Packages>