Presupuestos de cliente -> Generación de certificados de trabajos para los presupuestos aceptados. Se generan como fichero DOC.
git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/trunk@508 0c75b7a4-871f-7646-8a2f-f78d34cc349f
This commit is contained in:
parent
8cdd7b3947
commit
5d2c1aab9a
@ -53,57 +53,57 @@
|
||||
<DelphiCompile Include="Base.dpk">
|
||||
<MainSource>MainSource</MainSource>
|
||||
</DelphiCompile>
|
||||
<DCCReference Include="..\Modulos\Articulos\adortl.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\cxDataD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\cxEditorsD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\cxExportD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\cxExtEditorsD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\cxGridD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\cxIntl6D11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\cxIntlPrintSys3D11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\cxLibraryD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\cxPageControlD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\DataAbstract_Core_D11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\dbrtl.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\dclIndyCore.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\designide.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\dsnap.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\dxGDIPlusD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\dxPSCoreD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\dxThemeD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\GUISDK_D11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\IndyCore.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\IndyProtocols.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\IndySystem.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\Jcl.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\JclVcl.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\JSDialog100.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\JvCmpD11R.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\JvCoreD11R.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\JvCtrlsD11R.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\JvDlgsD11R.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\JvMMD11R.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\JvNetD11R.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\JvPageCompsD11R.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\JvStdCtrlsD11R.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\JvSystemD11R.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\pckMD5.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\pckUCDataConnector.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\pckUserControl_RT.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\PngComponentsD10.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\PNG_D10.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\RemObjects_Core_D11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\RemObjects_Indy_D11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\rtl.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\TB2k_D10.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\tbx_d10.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\vcl.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\vclactnband.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\vcldb.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\vcljpg.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\VclSmp.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\vclx.dcp" />
|
||||
<DCCReference Include="..\Modulos\Articulos\xmlrtl.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\adortl.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\cxDataD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\cxEditorsD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\cxExportD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\cxExtEditorsD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\cxGridD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\cxIntl6D11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\cxIntlPrintSys3D11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\cxLibraryD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\cxPageControlD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\DataAbstract_Core_D11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\dbrtl.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\dclIndyCore.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\designide.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\dsnap.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\dxGDIPlusD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\dxPSCoreD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\dxThemeD11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\GUISDK_D11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\IndyCore.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\IndyProtocols.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\IndySystem.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\Jcl.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\JclVcl.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\JSDialog100.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\JvCmpD11R.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\JvCoreD11R.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\JvCtrlsD11R.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\JvDlgsD11R.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\JvMMD11R.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\JvNetD11R.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\JvPageCompsD11R.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\JvStdCtrlsD11R.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\JvSystemD11R.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\pckMD5.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\pckUCDataConnector.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\pckUserControl_RT.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\PngComponentsD10.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\PNG_D10.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\RemObjects_Core_D11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\RemObjects_Indy_D11.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\rtl.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\TB2k_D10.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\tbx_d10.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\vcl.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\vclactnband.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\vcldb.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\vcljpg.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\VclSmp.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\vclx.dcp" />
|
||||
<DCCReference Include="..\Modulos\Presupuestos de cliente\Controller\xmlrtl.dcp" />
|
||||
<DCCReference Include="..\Servicios\FactuGES_Intf.pas" />
|
||||
<DCCReference Include="Conexion\uConfigurarConexion.pas">
|
||||
<Form>fConfigurarConexion</Form>
|
||||
|
||||
Binary file not shown.
@ -42,13 +42,16 @@ procedure CopiarFichero(const Origen, Destino: string);
|
||||
procedure DoDelTree( TheDir : String);
|
||||
procedure Deltree(DirToKill : String; KillChoosenDir : Boolean);
|
||||
function GetSpecialFolderPath(folder : integer) : string;
|
||||
function PreguntarRuta(const ATitulo: String; const AComentario: String; var ARuta: String): Boolean;
|
||||
function EscapeIllegalChars(AFileName: string): string;
|
||||
|
||||
implementation
|
||||
|
||||
uses
|
||||
SysUtils, Windows, Dialogs, JclFileUtils,
|
||||
Messages, Classes, Graphics, Controls, Forms,
|
||||
StdCtrls, SHFolder;
|
||||
StdCtrls, SHFolder, cxShellBrowserDialog,
|
||||
cxLookAndFeels;
|
||||
|
||||
|
||||
function GetSpecialFolderPath(folder : integer) : string;
|
||||
@ -281,5 +284,40 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
function PreguntarRuta(const ATitulo: String; const AComentario: String; var ARuta: String): Boolean;
|
||||
var
|
||||
cxShellBrowserDialog1: TcxShellBrowserDialog;
|
||||
begin
|
||||
cxShellBrowserDialog1 := TcxShellBrowserDialog.Create(NIL);
|
||||
try
|
||||
with cxShellBrowserDialog1 do
|
||||
begin
|
||||
Name := 'cxShellBrowserDialog1';
|
||||
FolderLabelCaption := AComentario;
|
||||
LookAndFeel.NativeStyle := True;
|
||||
LookAndFeel.Kind := lfStandard;
|
||||
Title := ATitulo;
|
||||
|
||||
Result := cxShellBrowserDialog1.Execute;
|
||||
ARuta := cxShellBrowserDialog1.Path;
|
||||
end;
|
||||
finally
|
||||
FreeANDNIL(cxShellBrowserDialog1);
|
||||
end;
|
||||
end;
|
||||
|
||||
|
||||
function EscapeIllegalChars(AFileName: string): string;
|
||||
var
|
||||
x: integer;
|
||||
const
|
||||
IllegalCharSet: set of char =
|
||||
['|','<','>','\','^','+','=','?','/','[',']','"',';',',','*'];
|
||||
begin
|
||||
for x := 1 to Length(AFileName) do
|
||||
if AFileName[x] in IllegalCharSet then
|
||||
AFileName[x] := '_';
|
||||
Result := AFileName;
|
||||
end;
|
||||
|
||||
end.
|
||||
|
||||
@ -54,7 +54,19 @@
|
||||
<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">2</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">Rodax Software S.L.</VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.2.0.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.2.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
|
||||
<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">2</VersionInfo><VersionInfo Name="Release">1</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.2.1.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.2.1.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Binary file not shown.
BIN
Source/Informes/CertificadoTrabajos.rdx
Normal file
BIN
Source/Informes/CertificadoTrabajos.rdx
Normal file
Binary file not shown.
@ -50,6 +50,7 @@ type
|
||||
|
||||
procedure Preview(APresupuesto : IBizPresupuestoCliente; AllItems: Boolean = false);
|
||||
procedure Print(APresupuesto : IBizPresupuestoCliente; AllItems: Boolean = false);
|
||||
function GenerarCertificados(APresupuesto : IBizPresupuestoCliente; AllItems: Boolean = false): Boolean;
|
||||
end;
|
||||
|
||||
TPresupuestosClienteController = class(TObservador, IPresupuestosClienteController)
|
||||
@ -110,6 +111,7 @@ type
|
||||
|
||||
procedure Preview(APresupuesto : IBizPresupuestoCliente; AllItems: Boolean = false);
|
||||
procedure Print(APresupuesto : IBizPresupuestoCliente; AllItems: Boolean = false);
|
||||
function GenerarCertificados(APresupuesto : IBizPresupuestoCliente; AllItems: Boolean = false): Boolean;
|
||||
end;
|
||||
|
||||
implementation
|
||||
@ -120,7 +122,8 @@ uses
|
||||
uBizContactos, uDataTableUtils, uDataModuleUsuarios, Classes, uFactuGES_App,
|
||||
schPresupuestosClienteClient_Intf, uDAInterfaces, uDateUtils, uIEditorPresupuestoCliente,
|
||||
uIEditorElegirPresupuestosCliente, uIEditorDireccionEntregaPresupuestoCliente,
|
||||
schContactosClient_Intf, uPresupuestosClienteReportController;
|
||||
schContactosClient_Intf, uPresupuestosClienteReportController,
|
||||
uSistemaFunc;
|
||||
|
||||
{ TPresupuestosClienteController }
|
||||
|
||||
@ -799,6 +802,66 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
function TPresupuestosClienteController.GenerarCertificados(
|
||||
APresupuesto: IBizPresupuestoCliente; AllItems: Boolean): Boolean;
|
||||
var
|
||||
AReportController : IPresupuestosClienteReportController;
|
||||
ID_Presupuestos: TStringList;
|
||||
AFile : String;
|
||||
ATitulo : String;
|
||||
AComentario : String;
|
||||
ARuta : String;
|
||||
|
||||
|
||||
function _GenerarCertificado: Boolean;
|
||||
var
|
||||
AFile: string;
|
||||
begin
|
||||
AFile := ARuta + PathDelim + EscapeIllegalChars(APresupuesto.REFERENCIA + '.doc');
|
||||
Result := AReportController.GenerarCertificados(APresupuesto.ID, AFile);
|
||||
end;
|
||||
|
||||
begin
|
||||
Result := False;
|
||||
AReportController := TPresupuestosClienteReportController.Create;
|
||||
ID_Presupuestos := TStringList.Create;
|
||||
try
|
||||
//Si deseamos imprimimos todos los items del objeto presupuesto
|
||||
if AllItems then
|
||||
begin
|
||||
ATitulo := 'Generar certificados de trabajos en PDF';
|
||||
AComentario := 'Indique la carpeta donde se guardarán los certificados' + #13#10 + 'Se generarán como ficheros PDF.';
|
||||
end
|
||||
else begin
|
||||
ATitulo := 'Generar certificado de trabajo en PDF';
|
||||
AComentario := 'Indique la carpeta donde se guardará el certificado.' + #13#10 + 'Se generará como fichero PDF.';
|
||||
end;
|
||||
|
||||
if PreguntarRuta(ATitulo, AComentario, ARuta) then
|
||||
begin
|
||||
if AllItems then
|
||||
begin
|
||||
APresupuesto.DataTable.First;
|
||||
while not APresupuesto.DataTable.EOF do
|
||||
begin
|
||||
if (APresupuesto.SITUACION = SITUACION_PRESUPUESTO_ACEPTADO) then
|
||||
_GenerarCertificado;
|
||||
APresupuesto.DataTable.Next;
|
||||
end;
|
||||
end
|
||||
else begin
|
||||
if (APresupuesto.SITUACION = SITUACION_PRESUPUESTO_ACEPTADO) then
|
||||
_GenerarCertificado;
|
||||
end;
|
||||
|
||||
Result := True;
|
||||
end;
|
||||
finally
|
||||
AReportController := NIL;
|
||||
FreeANDNIL(ID_Presupuestos);
|
||||
end;
|
||||
end;
|
||||
|
||||
function TPresupuestosClienteController.GetClienteController: IClientesController;
|
||||
begin
|
||||
Result := FClienteController;
|
||||
@ -809,5 +872,6 @@ begin
|
||||
Result := FDetallesController;
|
||||
end;
|
||||
|
||||
|
||||
|
||||
end.
|
||||
| ||||