diff --git a/Build/Build.fbl6 b/Build/Build.fbl6 index 0748cc1..2d80e47 100644 Binary files a/Build/Build.fbl6 and b/Build/Build.fbl6 differ diff --git a/Source/Modulos/Albaranes de cliente/Controller/uAlbaranesClienteController.pas b/Source/Modulos/Albaranes de cliente/Controller/uAlbaranesClienteController.pas index 16835cf..411bd0f 100644 --- a/Source/Modulos/Albaranes de cliente/Controller/uAlbaranesClienteController.pas +++ b/Source/Modulos/Albaranes de cliente/Controller/uAlbaranesClienteController.pas @@ -49,8 +49,8 @@ type procedure Preview(AAlbaran : IBizAlbaranCliente; AllItems: Boolean = false); procedure Print(AAlbaran : IBizAlbaranCliente; AllItems: Boolean = false); - procedure EtiquetasPreview(AAlbaran : IBizAlbaranCliente; Const withRefCliente: Boolean); - procedure EtiquetasPrint(AAlbaran : IBizAlbaranCliente; Const withRefCliente: Boolean); + procedure EtiquetasPreview(AAlbaran : IBizAlbaranCliente); + procedure EtiquetasPrint(AAlbaran : IBizAlbaranCliente); procedure RecalcularImportes(AAlbaran: IBizAlbaranCliente); function EsModificable(AAlbaran: IBizAlbaranCliente): Boolean; @@ -149,8 +149,8 @@ type procedure Preview(AAlbaran : IBizAlbaranCliente; AllItems: Boolean = false); procedure Print(AAlbaran : IBizAlbaranCliente; AllItems: Boolean = false); - procedure EtiquetasPreview(AAlbaran : IBizAlbaranCliente; Const withRefCliente: Boolean); - procedure EtiquetasPrint(AAlbaran : IBizAlbaranCliente; Const withRefCliente: Boolean); + procedure EtiquetasPreview(AAlbaran : IBizAlbaranCliente); + procedure EtiquetasPrint(AAlbaran : IBizAlbaranCliente); function DarListaAnosAlbaranes: TStringList; procedure FiltrarAno(AAlbaran: IBizAlbaranCliente; ADynWhereDataTable: WideString; const Ano: String); @@ -857,25 +857,25 @@ begin Result := not (AAlbaran.ID_FACTURA > 0); end; -procedure TAlbaranesClienteController.EtiquetasPreview(AAlbaran: IBizAlbaranCliente; Const withRefCliente: Boolean); +procedure TAlbaranesClienteController.EtiquetasPreview(AAlbaran: IBizAlbaranCliente); var AReportController : IAlbaranesClienteReportController; begin AReportController := TAlbaranesClienteReportController.Create; try - AReportController.EtiquetasPreview(AAlbaran.ID, withRefCliente); + AReportController.EtiquetasPreview(AAlbaran.ID); finally AReportController := NIL; end; end; -procedure TAlbaranesClienteController.EtiquetasPrint(AAlbaran: IBizAlbaranCliente; Const withRefCliente: Boolean); +procedure TAlbaranesClienteController.EtiquetasPrint(AAlbaran: IBizAlbaranCliente); var AReportController : IAlbaranesClienteReportController; begin AReportController := TAlbaranesClienteReportController.Create; try - AReportController.EtiquetasPrint(AAlbaran.ID, withRefCliente); + AReportController.EtiquetasPrint(AAlbaran.ID); finally AReportController := NIL; end; diff --git a/Source/Modulos/Albaranes de cliente/Controller/uAlbaranesClienteReportController.pas b/Source/Modulos/Albaranes de cliente/Controller/uAlbaranesClienteReportController.pas index 89c75a4..ddb349b 100644 --- a/Source/Modulos/Albaranes de cliente/Controller/uAlbaranesClienteReportController.pas +++ b/Source/Modulos/Albaranes de cliente/Controller/uAlbaranesClienteReportController.pas @@ -12,8 +12,8 @@ type ['{4BCC7A93-3322-494C-A3FA-118F4B62CB15}'] procedure Preview(const AListaID : TIntegerList); procedure Print(const AListaID : TIntegerList); - procedure EtiquetasPreview(const AID : integer; Const withRefCliente: Boolean); - procedure EtiquetasPrint(const AID : integer; Const withRefCliente: Boolean); + procedure EtiquetasPreview(const AID : integer); + procedure EtiquetasPrint(const AID : integer); function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean; function ExportToPDF(const AID: Integer; const AFileName : String = ''): Boolean; end; @@ -31,8 +31,8 @@ type procedure Print(const AListaID : TIntegerList); function ExportToWord(const AID: Integer; const AFileName : String = ''): Boolean; function ExportToPDF(const AID: Integer; const AFileName : String = ''): Boolean; - procedure EtiquetasPreview(const AID : integer; const withRefCliente: Boolean); - procedure EtiquetasPrint(const AID : integer; const withRefCliente: Boolean); + procedure EtiquetasPreview(const AID : integer); + procedure EtiquetasPrint(const AID : integer); end; @@ -64,7 +64,7 @@ begin inherited; end; -procedure TAlbaranesClienteReportController.EtiquetasPreview(const AID: integer; const withRefCliente: Boolean); +procedure TAlbaranesClienteReportController.EtiquetasPreview(const AID: integer); var AStream: Binary; AEditor : IEditorAlbaranesClientePreview; @@ -73,7 +73,7 @@ begin ShowHourglassCursor; try - AStream := FDataModule.GetEtiquetas(AID, withRefCliente); + AStream := FDataModule.GetEtiquetas(AID); try CreateEditor('EditorAlbaranesClientePreview', IEditorAlbaranesClientePreview, AEditor); if Assigned(AEditor) then @@ -92,7 +92,7 @@ begin end; end; -procedure TAlbaranesClienteReportController.EtiquetasPrint(const AID: integer; const withRefCliente: Boolean); +procedure TAlbaranesClienteReportController.EtiquetasPrint(const AID: integer); var AStream: Binary; AEditor : IEditorAlbaranesClientePreview; @@ -101,7 +101,7 @@ begin ShowHourglassCursor; try - AStream := FDataModule.GetEtiquetas(AID, withRefCliente); + AStream := FDataModule.GetEtiquetas(AID); try CreateEditor('EditorAlbaranesClientePreview', IEditorAlbaranesClientePreview, AEditor); if Assigned(AEditor) then diff --git a/Source/Modulos/Albaranes de cliente/Data/uDataModuleAlbaranesCliente.pas b/Source/Modulos/Albaranes de cliente/Data/uDataModuleAlbaranesCliente.pas index 37d6939..6f9ad0f 100644 --- a/Source/Modulos/Albaranes de cliente/Data/uDataModuleAlbaranesCliente.pas +++ b/Source/Modulos/Albaranes de cliente/Data/uDataModuleAlbaranesCliente.pas @@ -41,7 +41,7 @@ type // Report function GetRptAlbaranes(const ListaID: TIntegerList): Binary; function GetRptWordAlbaran(const AID: Integer): Binary; - function GetEtiquetas(const AID: Integer; withRefCliente: Boolean): Binary; + function GetEtiquetas(const AID: Integer): Binary; function GetRptPDFAlbaran(const AID: Integer): Binary; function GetAnosItems : TStringList; @@ -76,7 +76,7 @@ begin try Result := (RORemoteService as IsrvAlbaranesCliente).GenerarInforme(AParam); finally - FreeAndNil(AParam); +// FreeAndNil(AParam); end; end; @@ -165,9 +165,9 @@ begin end; end; -function TDataModuleAlbaranesCliente.GetEtiquetas(const AID: Integer; withRefCliente: Boolean): Binary; +function TDataModuleAlbaranesCliente.GetEtiquetas(const AID: Integer): Binary; begin - Result := (RORemoteService as IsrvAlbaranesCliente).GenerarInformeEtiquetas(AID, withRefCliente) + Result := (RORemoteService as IsrvAlbaranesCliente).GenerarInformeEtiquetas(AID) end; function TDataModuleAlbaranesCliente.GetItem(const ID: Integer): IBizAlbaranCliente; diff --git a/Source/Modulos/Albaranes de cliente/Model/Data/uIDataModuleAlbaranesClienteReport.pas b/Source/Modulos/Albaranes de cliente/Model/Data/uIDataModuleAlbaranesClienteReport.pas index 5e95c8c..d9464ef 100644 --- a/Source/Modulos/Albaranes de cliente/Model/Data/uIDataModuleAlbaranesClienteReport.pas +++ b/Source/Modulos/Albaranes de cliente/Model/Data/uIDataModuleAlbaranesClienteReport.pas @@ -11,7 +11,7 @@ type function GetRptAlbaranes(const AListaID: TIntegerList): Binary; function GetRptWordAlbaran(const AID: Integer): Binary; function GetRptPDFAlbaran(const AID: Integer): Binary; - function GetEtiquetas(const AID: Integer; withRefCliente: Boolean): Binary; + function GetEtiquetas(const AID: Integer): Binary; end; implementation diff --git a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm index c26687a..88d58bd 100644 --- a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm +++ b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.dfm @@ -539,7 +539,7 @@ object RptAlbaranesCliente: TRptAlbaranesCliente Top = 16 end object frxReport: TfrxReport - Version = '4.7.71' + Version = '4.8.11' DotMatrixReport = False EngineOptions.DoublePass = True IniFile = '\Software\Fast Reports' @@ -550,82 +550,6 @@ object RptAlbaranesCliente: TRptAlbaranesCliente ReportOptions.CreateDate = 39065.872423495400000000 ReportOptions.LastChange = 40196.760630046290000000 ScriptLanguage = 'PascalScript' - ScriptText.Strings = ( - 'var' - ' Pagina: Variant;' - '' - '' - 'procedure Memo2OnBeforePrint(Sender: TfrxComponent);' - 'begin' - ' Memo2.Lines.Clear;' - ' if (StrToFloat() < 0) then' - ' Memo2.Lines.Add('#39'ORDEN DE DEVOLUCI'#211'N'#39')' - ' else' - ' Memo2.Lines.Add('#39'ALBAR'#193'N DE CLIENTE'#39')' - 'end;' - '' - 'procedure Memo5OnBeforePrint(Sender: TfrxComponent);' - 'begin' - ' if (StrToFloat() < 0) then' - ' begin' - ' Memo5.Lines.Clear;' - ' Memo5.Lines.Add('#39'N'#186' orden:'#39');' - ' end;' - 'end;' - '' - 'procedure Memo9OnBeforePrint(Sender: TfrxComponent);' - 'begin' - ' if (StrToFloat() < 0) then' - ' begin' - ' Memo9.Lines.Clear;' - ' Memo9.Lines.Add('#39'Fecha orden:'#39');' - ' end;' - 'end;' - '' - 'procedure PageHeader1OnBeforePrint(Sender: TfrxComponent);' - 'begin' - ' if not Engine.FinalPass then' - ' Set('#39'TotalPaginas'#39', ( + 1));' - '' - ' if Engine.FinalPass then' - ' Set('#39'Pagina'#39', ( + 1));' - 'end;' - '' - 'procedure frxReportOnStartReport(Sender: TfrxComponent);' - 'begin' - ' Set('#39'Pagina'#39', 0);' - ' Set('#39'TotalPaginas'#39', 0);' - 'end;' - '' - 'procedure Memo26OnBeforePrint(Sender: TfrxComponent);' - 'begin' - - ' if and ( <> '#39#39') then' - - ' Memo26.Visible := True ' + - ' ' - ' else' - ' Memo26.Visible := False ' - 'end;' - '' - 'procedure Memo27OnBeforePrint(Sender: TfrxComponent);' - 'begin' - '{ ' - - ' if and ( <> '#39#39') then' - - ' Memo27.Visible := True ' + - ' ' - ' else' - ' Memo27.Visible := False' - '} ' - 'end;' - '' - 'begin' - '' - 'end.') ShowProgress = False StoreInDFM = False OnStartReport = 'frxReportOnStartReport' diff --git a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas index 9f506b4..e8c0451 100644 --- a/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas +++ b/Source/Modulos/Albaranes de cliente/Reports/uRptAlbaranesCliente_Server.pas @@ -8,7 +8,7 @@ uses uDADataTable, uDACDSDataTable, DB, uDAClasses, frxChart, frxGradient, frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDABINAdapter, uROTypes, uDAInterfaces, uDADataStreamer, IBCustomDataSet, IBQuery, IBDatabase, - uDAMemDataTable, frxExportPDF, FactuGES_Intf, uDABin2DataStreamer; + uDAMemDataTable, frxExportPDF, FactuGES_Intf, uDABin2DataStreamer, uROClient; type TRptAlbaranesCliente = class(TDataModule) @@ -69,7 +69,7 @@ type procedure _GenerarAlbaran(const AID: Integer); public function GenerarAlbaran(const AListaID : TIntegerArray): Binary; - function GenerarEtiquetas(const AID : Integer; withRefCliente: Boolean): Binary; + function GenerarEtiquetas(const AID : Integer): Binary; function GenerarAlbaranEnPDF(const ListaID : TIntegerArray): Binary; end; @@ -170,7 +170,7 @@ begin end; end; -function TRptAlbaranesCliente.GenerarEtiquetas(const AID: Integer; withRefCliente: Boolean): Binary; +function TRptAlbaranesCliente.GenerarEtiquetas(const AID: Integer): Binary; {var dsMaster: IDADataset; dsDetail: IDADataset; diff --git a/Source/Modulos/Albaranes de cliente/Servidor/srvAlbaranesCliente_Impl.pas b/Source/Modulos/Albaranes de cliente/Servidor/srvAlbaranesCliente_Impl.pas index b5ea91e..6105068 100644 --- a/Source/Modulos/Albaranes de cliente/Servidor/srvAlbaranesCliente_Impl.pas +++ b/Source/Modulos/Albaranes de cliente/Servidor/srvAlbaranesCliente_Impl.pas @@ -34,7 +34,7 @@ type protected { IsrvAlbaranesCliente methods } function GenerarInforme(const ListaID: TIntegerArray): Binary; - function GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary; + function GenerarInformeEtiquetas(const ID: Integer): Binary; function GenerarInformeEnWord(const ID: Integer): Binary; function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary; end; @@ -92,19 +92,18 @@ begin end; end; -function TsrvAlbaranesCliente.GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary; -//var -// AReportGenerator : TRptAlbaranesCliente; +function TsrvAlbaranesCliente.GenerarInformeEtiquetas(const ID: Integer): Binary; +var + AReportGenerator : TRptAlbaranesCliente; begin Result := NIL; -{ + AReportGenerator := TRptAlbaranesCliente.Create(nil); try - Result := AReportGenerator.GenerarEtiquetas(ID, withRefCliente); + Result := AReportGenerator.GenerarEtiquetas(ID); finally FreeAndNIL(AReportGenerator); end; -} end; function TsrvAlbaranesCliente.GenerarInforme(const ListaID: TIntegerArray): Binary; diff --git a/Source/Modulos/Albaranes de cliente/Views/uEditorAlbaranesCliente.dfm b/Source/Modulos/Albaranes de cliente/Views/uEditorAlbaranesCliente.dfm index 4021d3d..0cafdae 100644 --- a/Source/Modulos/Albaranes de cliente/Views/uEditorAlbaranesCliente.dfm +++ b/Source/Modulos/Albaranes de cliente/Views/uEditorAlbaranesCliente.dfm @@ -2,7 +2,6 @@ inherited fEditorAlbaranesCliente: TfEditorAlbaranesCliente Caption = 'Lista de albaranes de cliente' ClientWidth = 583 ExplicitWidth = 591 - ExplicitHeight = 240 PixelsPerInch = 96 TextHeight = 13 inherited JvNavPanelHeader: TJvNavPanelHeader @@ -130,16 +129,18 @@ inherited fEditorAlbaranesCliente: TfEditorAlbaranesCliente end end inherited tbxFiltro: TSpTBXToolbar - ExplicitWidth = 427 + ExplicitWidth = 435 inherited lblAno: TSpTBXLabelItem Visible = True end - inherited cbxListaAnos: TSpTBXComboBox - Visible = True - end inherited sepAno: TSpTBXSeparatorItem Visible = True end + inherited cbxListaAnos: TSpTBXComboBox + Left = 33 + Visible = True + ExplicitLeft = 33 + end end inherited tbxMenu: TSpTBXToolbar ExplicitWidth = 583 @@ -151,9 +152,9 @@ inherited fEditorAlbaranesCliente: TfEditorAlbaranesCliente end end inherited TBXTMain2: TSpTBXToolbar - Left = 427 + Left = 435 Visible = True - ExplicitLeft = 427 + ExplicitLeft = 435 ExplicitWidth = 117 object TBXItem42: TSpTBXItem Action = actEnviar @@ -2094,6 +2095,10 @@ inherited fEditorAlbaranesCliente: TfEditorAlbaranesCliente item Caption = 'Imprimir la lista de albaranes actual' Value = 200 + end + item + Caption = 'Imprimir etiquetas para albar'#225'n' + Value = 300 end> ButtonBar.Buttons = [cbCancel] MainIcon = tdiCustom @@ -2405,6 +2410,10 @@ inherited fEditorAlbaranesCliente: TfEditorAlbaranesCliente item Caption = 'Previsualizar la lista de albaranes actual' Value = 200 + end + item + Caption = 'Previsualizar etiquetas para albar'#225'n' + Value = 300 end> ButtonBar.Buttons = [cbCancel] MainIcon = tdiCustom diff --git a/Source/Modulos/Albaranes de cliente/Views/uEditorAlbaranesCliente.pas b/Source/Modulos/Albaranes de cliente/Views/uEditorAlbaranesCliente.pas index 0333589..853711c 100644 --- a/Source/Modulos/Albaranes de cliente/Views/uEditorAlbaranesCliente.pas +++ b/Source/Modulos/Albaranes de cliente/Views/uEditorAlbaranesCliente.pas @@ -12,7 +12,8 @@ uses uEditorGridBase, uBizAlbaranesCliente, uIEditorAlbaranesCliente, uAlbaranesClienteController, uCustomView, uViewBase, uViewBarraSeleccion, uViewGridBase, - uViewAlbaranesCliente, JvExComCtrls, JvStatusBar, JSDialog, uDAInterfaces; + uViewAlbaranesCliente, JvExComCtrls, JvStatusBar, JSDialog, uDAInterfaces, + StdCtrls, TntStdCtrls, SpTBXEditors; type TfEditorAlbaranesCliente = class(TfEditorGridBase, IEditorAlbaranesCliente) @@ -511,6 +512,19 @@ begin if Respuesta <> IDCANCEL then begin case JsPrevisualizarDialog.CustomButtonResult of + 300 : begin // Lista de elementos visibles + if AllItems then + begin + SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Albaranes as ISeleccionable).SelectedRecords); + AAlbaranes := (Controller as IAlbaranesClienteController).ExtraerSeleccionados(Albaranes) as IBizAlbaranCliente; + end + else + AAlbaranes := Albaranes; + + if Assigned(AAlbaranes) then + FController.Preview(AAlbaranes, AllItems); + end; + 200 : begin // Lista de elementos visibles inherited; end; diff --git a/Source/Servicios/FactuGES.RODL b/Source/Servicios/FactuGES.RODL index 5c04d72..5485d55 100644 --- a/Source/Servicios/FactuGES.RODL +++ b/Source/Servicios/FactuGES.RODL @@ -372,8 +372,6 @@ - - diff --git a/Source/Servicios/FactuGES_Intf.pas b/Source/Servicios/FactuGES_Intf.pas index 4e97cec..9666cd1 100644 --- a/Source/Servicios/FactuGES_Intf.pas +++ b/Source/Servicios/FactuGES_Intf.pas @@ -587,7 +587,7 @@ type IsrvAlbaranesCliente = interface(IDataAbstractService) ['{6E910718-9AB0-47BB-9875-B0DE66A68D7A}'] function GenerarInforme(const ListaID: TIntegerArray): Binary; - function GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary; + function GenerarInformeEtiquetas(const ID: Integer): Binary; function GenerarInformeEnWord(const ID: Integer): Binary; function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary; end; @@ -603,7 +603,7 @@ type function __GetInterfaceName:string; override; function GenerarInforme(const ListaID: TIntegerArray): Binary; - function GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary; + function GenerarInformeEtiquetas(const ID: Integer): Binary; function GenerarInformeEnWord(const ID: Integer): Binary; function GenerarInformeEnPDF(const ListaID: TIntegerArray): Binary; end; @@ -1898,13 +1898,12 @@ begin end end; -function TsrvAlbaranesCliente_Proxy.GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary; +function TsrvAlbaranesCliente_Proxy.GenerarInformeEtiquetas(const ID: Integer): Binary; begin try result := nil; __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInformeEtiquetas'); __Message.Write('ID', TypeInfo(Integer), ID, []); - __Message.Write('withRefCliente', TypeInfo(Boolean), withRefCliente, []); __Message.Finalize; __TransportChannel.Dispatch(__Message); diff --git a/Source/Servicios/FactuGES_Invk.pas b/Source/Servicios/FactuGES_Invk.pas index d39b008..60633af 100644 --- a/Source/Servicios/FactuGES_Invk.pas +++ b/Source/Servicios/FactuGES_Invk.pas @@ -1101,19 +1101,17 @@ begin end; procedure TsrvAlbaranesCliente_Invoker.Invoke_GenerarInformeEtiquetas(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); -{ function GenerarInformeEtiquetas(const ID: Integer; const withRefCliente: Boolean): Binary; } +{ function GenerarInformeEtiquetas(const ID: Integer): Binary; } var ID: Integer; - withRefCliente: Boolean; lResult: Binary; __lObjectDisposer: TROObjectDisposer; begin lResult := nil; try __Message.Read('ID', TypeInfo(Integer), ID, []); - __Message.Read('withRefCliente', TypeInfo(Boolean), withRefCliente, []); - lResult := (__Instance as IsrvAlbaranesCliente).GenerarInformeEtiquetas(ID, withRefCliente); + lResult := (__Instance as IsrvAlbaranesCliente).GenerarInformeEtiquetas(ID); __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvAlbaranesCliente', 'GenerarInformeEtiquetasResponse'); __Message.Write('Result', TypeInfo(Binary), lResult, []); diff --git a/Source/Servicios/RODLFILE.res b/Source/Servicios/RODLFILE.res index 14c38ff..b743f7b 100644 Binary files a/Source/Servicios/RODLFILE.res and b/Source/Servicios/RODLFILE.res differ diff --git a/Source/Servidor/FactuGES_Server.RES b/Source/Servidor/FactuGES_Server.RES index 2379856..bad20bc 100644 Binary files a/Source/Servidor/FactuGES_Server.RES and b/Source/Servidor/FactuGES_Server.RES differ diff --git a/Source/Servidor/FactuGES_Server.rc b/Source/Servidor/FactuGES_Server.rc index 32d1e2f..d2f0fbb 100644 --- a/Source/Servidor/FactuGES_Server.rc +++ b/Source/Servidor/FactuGES_Server.rc @@ -14,7 +14,7 @@ BEGIN BEGIN VALUE "FileVersion", "1.0.0.0\0" VALUE "ProductVersion", "1.0.0.0\0" - VALUE "CompileDate", "martes, 26 de enero de 2010 18:45\0" + VALUE "CompileDate", "miércoles, 27 de enero de 2010 16:46\0" END END BLOCK "VarFileInfo"