Version 5.5.1

Se revisa la comparación stockmin y stockdisponible, se habilita comerciales a graden
This commit is contained in:
Roberto 2026-01-22 11:49:05 +01:00
parent 34f739be67
commit 04751fd1a7
96 changed files with 5782 additions and 5252 deletions

Binary file not shown.

View File

@ -2,18 +2,18 @@
title firmadocumento
cls
set LOGFILE=D:\RODAX\FACTUGES\Servidor\Informes\2\log.txt
set LOGFILE=D:\RODAX\FACTUGES\Servidor\Informes\3\log.txt
set ARCHIVO=%1
set city=MADRID
set city=FUENLABRADA
set province=MADRID
set postalcode=28002
set postalcode=28946
set PositionOnPageLowerLeftX=420
set PositionOnPageLowerLeftY=140
set PositionOnPageUpperRightX=570
set PositionOnPageUpperRigthY=210
set signaturePage=-1
set signatureRubricImage="D:\RODAX\FACTUGES\Servidor\Informes\2\sello.jpg"
set signatureRubricImage="D:\RODAX\FACTUGES\Servidor\Informes\3\sello3.jpg"
set layer2text="Firmado digitalmente por $$ORGANIZATION$$ Fecha: $$SIGNDATE=dd/MM/yyyy$$"
SET l2FontColor=black
SET l2FontSize=7
@ -29,11 +29,11 @@ set "includeOnlySignningCertificate=true"
REM Siempre creará una revisión al firmar. Requiere que el documento cumpla PDF 1.7 (ISO 32000-1:2008)
REM "alwaysCreateRevision=true"
REM set "CONFIG=signatureProductionCity=MADRID\nsignatureProductionProvince=MADRID\nsignatureProductionPostalCode=28053\nsignatureProductionCountry=ESPAÑA\nsignaturePage3=%signaturePage3%\nPositionOnPageLowerLeftX=%PositionOnPageLowerLeftX%\nPositionPageLowerLeftY=%PositionPageLowerLeftY%\nPositionOnPageUpperRightX=%PositionOnPageUpperRightX%\nPositionOnPageUpperRigthY=%PositionOnPageUpperRigthY%\nsignatureRubricImage=%signatureRubricImage%\nlayer2text=%layer2text=%"
REM set "CONFIG=signatureProductionCity=MADRID\nsignatureProductionProvince=MADRID\nsignatureProductionPostalCode=28053\nsignatureProductionCountry=ESPAÑA\nsignaturePage3=%signaturePage3%\nPositionOnPageLowerLeftX=%PositionOnPageLowerLeftX%\nPositionPageLowerLeftY=%PositionPageLowerLeftY%\nPositionOnPageUpperRightX=%PositionOnPageUpperRightX%\nPositionOnPageUpperRigthY=%PositionOnPageUpperRigthY%\nlayer2text=%layer2text=%"
REM \nsignaturePage=%signaturePage%
set "CONFIG=headless=%headless%\nlayer2Text=%layer2text%\nsignatureProductionCity=%city%\nsignatureProductionProvince=%province%\nsignatureProductionPostalCode=%postalcode%\nsignatureProductionCountry=ESPAÑA\nsignaturePositionOnPageLowerLeftX=%PositionOnPageLowerLeftX%\nsignaturePositionOnPageLowerLeftY=%PositionOnPageLowerLeftY%\nsignaturePositionOnPageUpperRightX=%PositionOnPageUpperRightX%\nsignaturePositionOnPageUpperRightY=%PositionOnPageUpperRigthY%\nsignaturePage=-1\nsignatureRubricImage=%signatureRubricImage%\nincludeOnlySignningCertificate=true\nownerPassword=uecko24"
set "CONFIG=headless=%headless%\nlayer2Text=%layer2text%\nsignatureProductionCity=%city%\nsignatureProductionProvince=%province%\nsignatureProductionPostalCode=%postalcode%\nsignatureProductionCountry=ESPAÑA\nsignaturePositionOnPageLowerLeftX=%PositionOnPageLowerLeftX%\nsignaturePositionOnPageLowerLeftY=%PositionOnPageLowerLeftY%\nsignaturePositionOnPageUpperRightX=%PositionOnPageUpperRightX%\nsignaturePositionOnPageUpperRightY=%PositionOnPageUpperRigthY%\nsignaturePage=-1\nincludeOnlySignningCertificate=true\nownerPassword=uecko24"
REM echo %CONFIG% > %LOGFILE%
@ -41,5 +41,8 @@ call :FIRMA >> %LOGFILE%
exit /b
:FIRMA
"C:\Program Files (x86)\AutoFirma\AutoFirma\AutoFirmaCommandLine.exe" sign -i %ARCHIVO% -o %ARCHIVO% -store pkcs12:"D:\DATOS2\FINANZAS\CERTIFICADOS\graden.pfx" -password %PASSGRADEN% -filter subject.contains:806465 -config %CONFIG%
"C:\Program Files (x86)\AutoFirma\AutoFirma\AutoFirmaCommandLine.exe" sign -i %ARCHIVO% -o %ARCHIVO% -store pkcs12:"D:\DATOS2\FINANZAS\00 HORSAN\CERTIFICADOS\HORSANMONTEBLANCO.pfx" -password %PASSHORSAN% -filter subject.contains:75674275 -config %CONFIG%

View File

@ -46,6 +46,18 @@
<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="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 Name="Comments"></VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<Excluded_Packages Name="C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\DataAbstract_SQLiteDriver_D11.bpl">RemObjects Data Abstract - SQLite Driver</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>
@ -56,43 +68,43 @@
<DelphiCompile Include="ApplicationBase.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\adortl.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\Base.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\ccpackD11.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\cfpack_d11.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\cxDataD11.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\cxEditorsD11.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\cxExtEditorsD11.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\cxLibraryD11.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\DataAbstract_Core_D11.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\dbrtl.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\designide.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\dsnap.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\dxCoreD11.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\dxGDIPlusD11.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\dxNavBarD11.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\dxThemeD11.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\GUIBase.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\GUISDK_D11R.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\Jcl.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\JclVcl.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\JvCoreD11R.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\JvCtrlsD11R.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\JvJansD11R.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\JvMMD11R.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\JvStdCtrlsD11R.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\JvSystemD11R.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\PluginSDK_D11R.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\PngComponentsD10.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\PNG_D10.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\RemObjects_Core_D11.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\rtl.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\vcl.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\vclactnband.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\vcldb.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\vcljpg.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\vclx.dcp" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Views\xmlrtl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\adortl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\Base.dcp" />
<DCCReference Include="$(SystemRoot)\system32\ccpackD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cfpack_d11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxDataD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxEditorsD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxExtEditorsD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxLibraryD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\DataAbstract_Core_D11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dbrtl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\designide.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dsnap.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dxCoreD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dxGDIPlusD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dxNavBarD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dxThemeD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\GUIBase.dcp" />
<DCCReference Include="$(SystemRoot)\system32\GUISDK_D11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\Jcl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JclVcl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvCoreD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvCtrlsD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvJansD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvMMD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvStdCtrlsD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvSystemD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\PluginSDK_D11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\PngComponentsD10.dcp" />
<DCCReference Include="$(SystemRoot)\system32\PNG_D10.dcp" />
<DCCReference Include="$(SystemRoot)\system32\RemObjects_Core_D11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\rtl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vcl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vclactnband.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vcldb.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vcljpg.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vclx.dcp" />
<DCCReference Include="$(SystemRoot)\system32\xmlrtl.dcp" />
<DCCReference Include="Configuracion\Controller\uConfiguracionController.pas" />
<DCCReference Include="Configuracion\Controller\Views\uIViewConfiguracionBase.pas" />
<DCCReference Include="Configuracion\Views\uEditorConfiguracion.pas">

View File

@ -9,7 +9,12 @@ uses
const
CTE_PERFIL_ADMINISTRADOR = 3;
CTE_PERFIL_GERENCIA = 2;
CTE_PERFIL_GERENCIA_INI = 200;
CTE_PERFIL_GERENCIA_FIN = 209;
CTE_PERFIL_GERENCIA_ARTICULOS = 205;
CTE_TARIFAS_DE_GERENCIA: array[0..1] of string = ('TODOS', 'TARIFA');
CTE_PERFIL_VENDEDOR_GRADEN_UECKO2 = 12;
CTE_PERFIL_COMPRAS = 8;

View File

@ -51,6 +51,13 @@
<Excluded_Packages Name="$(BDS)\Bin\dclintraweb_90_100.bpl">VCL for the Web Design Package for CodeGear RAD Studio</Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dclwebsnap100.bpl">CodeGear WebSnap Components</Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dclsoap100.bpl">CodeGear SOAP Components</Excluded_Packages>
@ -65,55 +72,55 @@
<DelphiCompile Include="Base.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="$(SystemRoot)\system32\adortl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxDataD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxEditorsD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxExtEditorsD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxGridD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxLibraryD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxPageControlD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\DataAbstract_Core_D11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dbrtl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dclIndyCore.dcp" />
<DCCReference Include="$(SystemRoot)\system32\designide.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dsnap.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dxGDIPlusD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dxPSCoreD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dxThemeD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\GUISDK_D11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\IndyCore.dcp" />
<DCCReference Include="$(SystemRoot)\system32\IndyProtocols.dcp" />
<DCCReference Include="$(SystemRoot)\system32\IndySystem.dcp" />
<DCCReference Include="$(SystemRoot)\system32\Jcl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JclVcl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JSDialog100.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvCmpD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvCoreD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvCtrlsD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvDlgsD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvMMD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvNetD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvPageCompsD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvStdCtrlsD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvSystemD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\pckMD5.dcp" />
<DCCReference Include="$(SystemRoot)\system32\pckUCDataConnector.dcp" />
<DCCReference Include="$(SystemRoot)\system32\pckUserControl_RT.dcp" />
<DCCReference Include="$(SystemRoot)\system32\PluginSDK_D11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\PngComponentsD10.dcp" />
<DCCReference Include="$(SystemRoot)\system32\PNG_D10.dcp" />
<DCCReference Include="$(SystemRoot)\system32\RemObjects_Core_D11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\rtl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\TB2k_D10.dcp" />
<DCCReference Include="$(SystemRoot)\system32\tbx_d10.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vcl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vclactnband.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vcldb.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vcljpg.dcp" />
<DCCReference Include="$(SystemRoot)\system32\VclSmp.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vclx.dcp" />
<DCCReference Include="$(SystemRoot)\system32\xmlrtl.dcp" />
<DCCReference Include="..\Servicios\FactuGES_Intf.pas" />
<DCCReference Include="..\Servidor\adortl.dcp" />
<DCCReference Include="..\Servidor\cxDataD11.dcp" />
<DCCReference Include="..\Servidor\cxEditorsD11.dcp" />
<DCCReference Include="..\Servidor\cxExtEditorsD11.dcp" />
<DCCReference Include="..\Servidor\cxGridD11.dcp" />
<DCCReference Include="..\Servidor\cxLibraryD11.dcp" />
<DCCReference Include="..\Servidor\cxPageControlD11.dcp" />
<DCCReference Include="..\Servidor\DataAbstract_Core_D11.dcp" />
<DCCReference Include="..\Servidor\dbrtl.dcp" />
<DCCReference Include="..\Servidor\dclIndyCore.dcp" />
<DCCReference Include="..\Servidor\designide.dcp" />
<DCCReference Include="..\Servidor\dsnap.dcp" />
<DCCReference Include="..\Servidor\dxGDIPlusD11.dcp" />
<DCCReference Include="..\Servidor\dxPSCoreD11.dcp" />
<DCCReference Include="..\Servidor\dxThemeD11.dcp" />
<DCCReference Include="..\Servidor\GUISDK_D11R.dcp" />
<DCCReference Include="..\Servidor\IndyCore.dcp" />
<DCCReference Include="..\Servidor\IndyProtocols.dcp" />
<DCCReference Include="..\Servidor\IndySystem.dcp" />
<DCCReference Include="..\Servidor\Jcl.dcp" />
<DCCReference Include="..\Servidor\JclVcl.dcp" />
<DCCReference Include="..\Servidor\JSDialog100.dcp" />
<DCCReference Include="..\Servidor\JvCmpD11R.dcp" />
<DCCReference Include="..\Servidor\JvCoreD11R.dcp" />
<DCCReference Include="..\Servidor\JvCtrlsD11R.dcp" />
<DCCReference Include="..\Servidor\JvDlgsD11R.dcp" />
<DCCReference Include="..\Servidor\JvMMD11R.dcp" />
<DCCReference Include="..\Servidor\JvNetD11R.dcp" />
<DCCReference Include="..\Servidor\JvPageCompsD11R.dcp" />
<DCCReference Include="..\Servidor\JvStdCtrlsD11R.dcp" />
<DCCReference Include="..\Servidor\JvSystemD11R.dcp" />
<DCCReference Include="..\Servidor\pckMD5.dcp" />
<DCCReference Include="..\Servidor\pckUCDataConnector.dcp" />
<DCCReference Include="..\Servidor\pckUserControl_RT.dcp" />
<DCCReference Include="..\Servidor\PluginSDK_D11R.dcp" />
<DCCReference Include="..\Servidor\PngComponentsD10.dcp" />
<DCCReference Include="..\Servidor\PNG_D10.dcp" />
<DCCReference Include="..\Servidor\RemObjects_Core_D11.dcp" />
<DCCReference Include="..\Servidor\rtl.dcp" />
<DCCReference Include="..\Servidor\TB2k_D10.dcp" />
<DCCReference Include="..\Servidor\tbx_d10.dcp" />
<DCCReference Include="..\Servidor\vcl.dcp" />
<DCCReference Include="..\Servidor\vclactnband.dcp" />
<DCCReference Include="..\Servidor\vcldb.dcp" />
<DCCReference Include="..\Servidor\vcljpg.dcp" />
<DCCReference Include="..\Servidor\VclSmp.dcp" />
<DCCReference Include="..\Servidor\vclx.dcp" />
<DCCReference Include="..\Servidor\xmlrtl.dcp" />
<DCCReference Include="Conexion\uConfigurarConexion.pas">
<Form>fConfigurarConexion</Form>
<DesignClass>TForm</DesignClass>

View File

@ -18,12 +18,29 @@ function calcularLetraNIF(numeroDNI : integer): string;
function comprobarLetraNIF(nif: string): boolean;
function validarCIF(Cif: string) : boolean;
function CadLimpiaCar(NIF: String): String;
function ContainsAnyText(const AText: string; const AValues: array of string): Boolean;
implementation
uses
Variants, SysUtils;
StrUtils, Variants, SysUtils;
{ Comprueba que el texto dado no contenga alguno de los strings del array dado }
function ContainsAnyText(const AText: string; const AValues: array of string): Boolean;
var
S: string;
begin
Result := False;
for S in AValues do
begin
if ContainsText(AText, S) then
begin
Result := True;
Exit;
end;
end;
end;
{ Convierte una cadena con items separados con un delimitador en un TString }
procedure StringToStrings(Source:string; Delimiter:char; Target:TStrings);

View File

@ -52,7 +52,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">5</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">Rodax Software S.L.</VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">5.0.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">5.0.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">5</VersionInfo><VersionInfo Name="MinorVer">5</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">5.5.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">5.5.1.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<Excluded_Packages Name="C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\dxPScxScheduler2LnkD11.bpl">File C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\dxPScxScheduler2LnkD11.bpl not found</Excluded_Packages>
</Excluded_Packages><Source><Source Name="MainSource">FactuGES.dpr</Source></Source></Delphi.Personality><ModelSupport>False</ModelSupport></BorlandProject></BorlandProject>

Binary file not shown.

View File

@ -251,8 +251,10 @@ begin
end;
//El usuario GERENCIA)
if (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_GERENCIA)
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR) then
if (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR)
or ((AppFactuGES.UsuarioActivo.ID_PERFIL >= CTE_PERFIL_GERENCIA_INI)
and (AppFactuGES.UsuarioActivo.ID_PERFIL <= CTE_PERFIL_GERENCIA_FIN)) then
//Los usuarios SOLO PRESUPUESTOS verán solo clientes y presupuestos de la empresa asignada o todas
begin
//Esta condición tiene que ser dinámica ya que solo será visible en la empresa abeto ya que en graden no tiene sentido
//se mete en RefrescarUI
@ -298,8 +300,9 @@ begin
//AQUI MENUS DINAMICOS SEGUN EMPRESA Y PERFIL
actMenuLogistica.Visible := (AppFactuGES.EmpresaActiva.ID = CTE_EMPRESA_ABETO)
and ((AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_COMPRAS)
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_GERENCIA)
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR));
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR))
or ((AppFactuGES.UsuarioActivo.ID_PERFIL >= CTE_PERFIL_GERENCIA_INI)
and (AppFactuGES.UsuarioActivo.ID_PERFIL <= CTE_PERFIL_GERENCIA_FIN));
actMenuLogistica.Enabled := actMenuLogistica.Visible;
end;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -2,18 +2,18 @@
title firmadocumento
cls
set LOGFILE=D:\RODAX\FACTUGES\Servidor\Informes\2\log.txt
set LOGFILE=D:\RODAX\FACTUGES\Servidor\Informes\3\log.txt
set ARCHIVO=%1
set city=MADRID
set city=FUENLABRADA
set province=MADRID
set postalcode=28002
set postalcode=28946
set PositionOnPageLowerLeftX=420
set PositionOnPageLowerLeftY=140
set PositionOnPageUpperRightX=570
set PositionOnPageUpperRigthY=210
set signaturePage=-1
set signatureRubricImage="D:\RODAX\FACTUGES\Servidor\Informes\2\sello.jpg"
set signatureRubricImage="D:\RODAX\FACTUGES\Servidor\Informes\3\sello3.jpg"
set layer2text="Firmado digitalmente por $$ORGANIZATION$$ Fecha: $$SIGNDATE=dd/MM/yyyy$$"
SET l2FontColor=black
SET l2FontSize=7
@ -29,11 +29,11 @@ set "includeOnlySignningCertificate=true"
REM Siempre creará una revisión al firmar. Requiere que el documento cumpla PDF 1.7 (ISO 32000-1:2008)
REM "alwaysCreateRevision=true"
REM set "CONFIG=signatureProductionCity=MADRID\nsignatureProductionProvince=MADRID\nsignatureProductionPostalCode=28053\nsignatureProductionCountry=ESPAÑA\nsignaturePage3=%signaturePage3%\nPositionOnPageLowerLeftX=%PositionOnPageLowerLeftX%\nPositionPageLowerLeftY=%PositionPageLowerLeftY%\nPositionOnPageUpperRightX=%PositionOnPageUpperRightX%\nPositionOnPageUpperRigthY=%PositionOnPageUpperRigthY%\nsignatureRubricImage=%signatureRubricImage%\nlayer2text=%layer2text=%"
REM set "CONFIG=signatureProductionCity=MADRID\nsignatureProductionProvince=MADRID\nsignatureProductionPostalCode=28053\nsignatureProductionCountry=ESPAÑA\nsignaturePage3=%signaturePage3%\nPositionOnPageLowerLeftX=%PositionOnPageLowerLeftX%\nPositionPageLowerLeftY=%PositionPageLowerLeftY%\nPositionOnPageUpperRightX=%PositionOnPageUpperRightX%\nPositionOnPageUpperRigthY=%PositionOnPageUpperRigthY%\nlayer2text=%layer2text=%"
REM \nsignaturePage=%signaturePage%
set "CONFIG=headless=%headless%\nlayer2Text=%layer2text%\nsignatureProductionCity=%city%\nsignatureProductionProvince=%province%\nsignatureProductionPostalCode=%postalcode%\nsignatureProductionCountry=ESPAÑA\nsignaturePositionOnPageLowerLeftX=%PositionOnPageLowerLeftX%\nsignaturePositionOnPageLowerLeftY=%PositionOnPageLowerLeftY%\nsignaturePositionOnPageUpperRightX=%PositionOnPageUpperRightX%\nsignaturePositionOnPageUpperRightY=%PositionOnPageUpperRigthY%\nsignaturePage=-1\nsignatureRubricImage=%signatureRubricImage%\nincludeOnlySignningCertificate=true\nownerPassword=uecko24"
set "CONFIG=headless=%headless%\nlayer2Text=%layer2text%\nsignatureProductionCity=%city%\nsignatureProductionProvince=%province%\nsignatureProductionPostalCode=%postalcode%\nsignatureProductionCountry=ESPAÑA\nsignaturePositionOnPageLowerLeftX=%PositionOnPageLowerLeftX%\nsignaturePositionOnPageLowerLeftY=%PositionOnPageLowerLeftY%\nsignaturePositionOnPageUpperRightX=%PositionOnPageUpperRightX%\nsignaturePositionOnPageUpperRightY=%PositionOnPageUpperRigthY%\nsignaturePage=-1\nincludeOnlySignningCertificate=true\nownerPassword=uecko24"
REM echo %CONFIG% > %LOGFILE%
@ -41,5 +41,8 @@ call :FIRMA >> %LOGFILE%
exit /b
:FIRMA
"C:\Program Files (x86)\AutoFirma\AutoFirma\AutoFirmaCommandLine.exe" sign -i %ARCHIVO% -o %ARCHIVO% -store pkcs12:"D:\DATOS2\FINANZAS\CERTIFICADOS\graden.pfx" -password %PASSGRADEN% -filter subject.contains:806465 -config %CONFIG%
"C:\Program Files (x86)\AutoFirma\AutoFirma\AutoFirmaCommandLine.exe" sign -i %ARCHIVO% -o %ARCHIVO% -store pkcs12:"D:\DATOS2\FINANZAS\00 HORSAN\CERTIFICADOS\HORSANMONTEBLANCO.pfx" -password %PASSHORSAN% -filter subject.contains:75674275 -config %CONFIG%

View File

@ -1,12 +1,19 @@
inherited fEditorAlbaranesClientePreview: TfEditorAlbaranesClientePreview
Caption = 'Previsualizar el albar'#225'n de cliente'
ExplicitWidth = 660
ExplicitHeight = 494
ExplicitWidth = 962
ExplicitHeight = 547
PixelsPerInch = 96
TextHeight = 13
inherited frxReport1: TfrxReport
Datasets = <>
Variables = <>
Style = <>
inherited JvNavPanelHeader: TJvNavPanelHeader
ExplicitTop = 78
end
inherited frxPDFExport1: TfrxPDFExport
ShowDialog = False
ShowProgress = False
EmbeddedFonts = True
HTMLTags = True
Author = 'FactuGES'
Subject = 'FactuGES'
Creator = 'FactuGES'
end
end

View File

@ -12,7 +12,7 @@ uses
ExtCtrls, JvExControls, JvComponent, JvNavigationPane, uIEditorAlbaranesClientePreview,
JvExComCtrls, JvStatusBar, frxDMPExport, frxGradient, frxChBox, frxCross,
frxRich, frxOLE, frxBarcode, JvAppStorage, JvAppRegistryStorage,
JvComponentBase;
JvComponentBase, frxExportText, frxExportRTF, frxExportMail, frxExportXLS;
type
TfEditorAlbaranesClientePreview = class(TfEditorPreview, IEditorAlbaranesClientePreview)

View File

@ -49,31 +49,35 @@
<DelphiCompile Include="AlbaranesProveedor_controller.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="adortl.dcp" />
<DCCReference Include="AlbaranesProveedor_data.dcp" />
<DCCReference Include="AlbaranesProveedor_model.dcp" />
<DCCReference Include="Articulos_controller.dcp" />
<DCCReference Include="Contactos_controller.dcp" />
<DCCReference Include="cxLibraryD11.dcp" />
<DCCReference Include="DataAbstract_Core_D11.dcp" />
<DCCReference Include="dbrtl.dcp" />
<DCCReference Include="dsnap.dcp" />
<DCCReference Include="dxCoreD11.dcp" />
<DCCReference Include="dxGDIPlusD11.dcp" />
<DCCReference Include="dxThemeD11.dcp" />
<DCCReference Include="GUIBase.dcp" />
<DCCReference Include="Inventario_model.dcp" />
<DCCReference Include="PedidosProveedor_controller.dcp" />
<DCCReference Include="PedidosProveedor_model.dcp" />
<DCCReference Include="RemObjects_Core_D11.dcp" />
<DCCReference Include="rtl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\adortl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\AlbaranesProveedor_data.dcp" />
<DCCReference Include="$(SystemRoot)\system32\AlbaranesProveedor_model.dcp" />
<DCCReference Include="$(SystemRoot)\system32\Articulos_controller.dcp" />
<DCCReference Include="$(SystemRoot)\system32\Contactos_controller.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxLibraryD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\DataAbstract_Core_D11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dbrtl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\designide.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dsnap.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dxCoreD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dxGDIPlusD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dxThemeD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\GUIBase.dcp" />
<DCCReference Include="$(SystemRoot)\system32\GUISDK_D11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\Inventario_model.dcp" />
<DCCReference Include="$(SystemRoot)\system32\PedidosProveedor_controller.dcp" />
<DCCReference Include="$(SystemRoot)\system32\PedidosProveedor_model.dcp" />
<DCCReference Include="$(SystemRoot)\system32\RemObjects_Core_D11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\rtl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vcl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vclactnband.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vcldb.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vclx.dcp" />
<DCCReference Include="$(SystemRoot)\system32\xmlrtl.dcp" />
<DCCReference Include="uAlbaranesProveedorController.pas" />
<DCCReference Include="uAlbaranesProveedorReportController.pas" />
<DCCReference Include="uArticulosAlbaranProveedorController.pas" />
<DCCReference Include="uDetallesAlbaranProveedorController.pas" />
<DCCReference Include="vcl.dcp" />
<DCCReference Include="vcldb.dcp" />
<DCCReference Include="vclx.dcp" />
<DCCReference Include="View\uIEditorAlbaranDevProveedor.pas" />
<DCCReference Include="View\uIEditorAlbaranesDevProveedor.pas" />
<DCCReference Include="View\uIEditorAlbaranesProveedor.pas" />
@ -82,6 +86,7 @@
<DCCReference Include="View\uIEditorDireccionEntregaAlbaranProveedor.pas" />
<DCCReference Include="View\uIEditorElegirAlbaranesProveedor.pas" />
<DCCReference Include="View\uIEditorElegirArticulosAlbaranesProveedor.pas" />
<DCCReference Include="View\uIEditorResultadoAlbaranesConArticulo.pas" />
</ItemGroup>
</Project>
<!-- EurekaLog First Line

View File

@ -24,11 +24,15 @@ type
function BuscarTodos: IBizAlbaranProveedor;
function BuscarAlbaranesNormales: IBizAlbaranProveedor;
function BuscarAlbaranesDevolucion: IBizAlbaranProveedor;
function BuscarAlbaranesConArticulo(const Concepto: String; const isEqual: Boolean = false): IBizAlbaranProveedor;
function BuscarSinFacturar : IBizAlbaranProveedor;
procedure Ver(AAlbaran : IBizAlbaranProveedor);
procedure VerTodosAlbaranes(AAlbarans: IBizAlbaranProveedor);
procedure VerTodosAlbaranesDev(AAlbarans: IBizAlbaranProveedor);
procedure VerDireccionEntrega(AAlbaran : IBizAlbaranProveedor);
procedure VerTodosAlbaranesConArticulo(AAlbaranes: IBizAlbaranProveedor; const AVerModal : Boolean = False; const AWindowCaption: String = ''; const AHeaderText: String = '');
function Nuevo (WithInsert: Boolean = True): IBizAlbaranProveedor;
function Anadir(AAlbaran : IBizAlbaranProveedor) : Boolean; overload;
function AnadirAlbaranDev(AAlbaran : IBizAlbaranProveedor) : Boolean;
@ -107,12 +111,16 @@ type
function BuscarTodos: IBizAlbaranProveedor;
function BuscarAlbaranesNormales: IBizAlbaranProveedor;
function BuscarAlbaranesDevolucion: IBizAlbaranProveedor;
function BuscarAlbaranesConArticulo(const Concepto: String; const isEqual: Boolean = false): IBizAlbaranProveedor;
function BuscarSinFacturar : IBizAlbaranProveedor;
function Nuevo (WithInsert: Boolean = True): IBizAlbaranProveedor;
procedure Ver(AAlbaran : IBizAlbaranProveedor);
procedure VerTodosAlbaranes(AAlbarans: IBizAlbaranProveedor);
procedure VerTodosAlbaranesDev(AAlbarans: IBizAlbaranProveedor);
procedure VerDireccionEntrega(AAlbaran : IBizAlbaranProveedor);
procedure VerTodosAlbaranesConArticulo(AAlbaranes: IBizAlbaranProveedor; const AVerModal : Boolean = False; const AWindowCaption: String = ''; const AHeaderText: String = '');
function Duplicar(AAlbaran: IBizAlbaranProveedor): IBizAlbaranProveedor;
procedure CopiarDireccionEnvio (const ADireccionEnvio: IBizDireccionesContacto; AAlbaran: IBizAlbaranProveedor);
@ -144,8 +152,8 @@ uses
schAlbaranesProveedorClient_Intf, uDAInterfaces, uDateUtils, uIEditorAlbaranProveedor,
uIEditorElegirAlbaranesProveedor, uIEditorDireccionEntregaAlbaranProveedor,
schContactosClient_Intf, Forms, schPedidosProveedorClient_Intf, uFactuGES_App,
uPedidosProveedorController, uBizDetallesPedidoProveedor,
uControllerDetallesBase, uControllerDetallesArticulos, Variants, uDialogUtils,
uPedidosProveedorController, uBizDetallesPedidoProveedor, uIEditorResultadoAlbaranesConArticulo,
uControllerDetallesBase, uControllerDetallesArticulos, Variants, uDialogUtils, uStringsUtils,
uIEditorAlbaranDevProveedor, uAlbaranesProveedorReportController;
@ -232,6 +240,19 @@ begin
FiltrarEmpresa(Result);
end;
function TAlbaranesProveedorController.BuscarAlbaranesConArticulo(const Concepto: String; const isEqual: Boolean): IBizAlbaranProveedor;
var
AText : String;
AAlbaranes : IBizAlbaranProveedor;
begin
AAlbaranes := FDataModule.GetAlbaranesConArticulo(Concepto, isEqual);
FiltrarEmpresa(AAlbaranes);
AText := Format('Lista de pedidos que contienen el articulo "%s"', [Concepto]);
VerTodosAlbaranesConArticulo(AAlbaranes, True, '', Atext);
end;
function TAlbaranesProveedorController.BuscarAlbaranesDevolucion: IBizAlbaranProveedor;
var
Condicion: TDAWhereExpression;
@ -560,6 +581,36 @@ begin
end;
end;
procedure TAlbaranesProveedorController.VerTodosAlbaranesConArticulo(AAlbaranes: IBizAlbaranProveedor; const AVerModal: Boolean;
const AWindowCaption, AHeaderText: String);
var
AEditor : IEditorResultadoAlbaranesConArticulo;
begin
AEditor := NIL;
CreateEditor('EditorResultadoAlbaranesConArticulo', IEditorResultadoAlbaranesConArticulo, AEditor);
if Assigned(AEditor) then
try
if not EsCadenaVacia(AWindowCaption) then
AEditor.WindowCaption := AWindowCaption;
if not EsCadenaVacia(AHeaderText) then
AEditor.HeaderText := AHeaderText;
AEditor.Controller := Self; //OJO ORDEN MUY IMPORTANTE
AEditor.Albaranes := AAlbaranes;
AEditor.MultiSelect := True;
if AVerModal then
AEditor.ShowModal
else
AEditor.ShowEmbedded;
finally
if AVerModal then
AEditor.Release;
AEditor := NIL;
end;
end;
procedure TAlbaranesProveedorController.VerTodosAlbaranesDev(AAlbarans: IBizAlbaranProveedor);
var
AEditor : IEditorAlbaranesDevProveedor;

View File

@ -1,6 +1,7 @@
inherited DataModuleAlbaranesProveedor: TDataModuleAlbaranesProveedor
OnCreate = DAClientDataModuleCreate
Width = 462
Height = 423
Width = 783
object RORemoteService: TRORemoteService
Message = dmConexion.ROMessage
Channel = dmConexion.ROChannel
@ -281,6 +282,10 @@ inherited DataModuleAlbaranesProveedor: TDataModuleAlbaranesProveedor
Name = 'REF_PED_PROV_PADRE'
DataType = datString
Size = 255
end
item
Name = 'CONCEPTO_BUSQUEDA'
DataType = datString
end>
Params = <>
StreamingOptions = [soDisableEventsWhileStreaming]
@ -438,4 +443,217 @@ inherited DataModuleAlbaranesProveedor: TDataModuleAlbaranesProveedor
Left = 200
Top = 176
end
object tbl_AlbaranesProveedorConArticuloBuscado: TDAMemDataTable
RemoteUpdatesOptions = []
Fields = <
item
Name = 'ID'
DataType = datAutoInc
GeneratorName = 'GEN_ALBARANES_PRO_ID'
Required = True
DictionaryEntry = 'AlbaranesProveedor_ID'
InPrimaryKey = True
end
item
Name = 'ID_EMPRESA'
DataType = datInteger
DictionaryEntry = 'AlbaranesProveedor_ID_EMPRESA'
end
item
Name = 'ID_PROVEEDOR'
DataType = datInteger
end
item
Name = 'NOMBRE'
DataType = datString
Size = 255
end
item
Name = 'FECHA_ALBARAN'
DataType = datDateTime
end
item
Name = 'REFERENCIA'
DataType = datString
Size = 255
end
item
Name = 'REFERENCIA_PROVEEDOR'
DataType = datString
Size = 255
end
item
Name = 'TIPO'
DataType = datString
Size = 1
end
item
Name = 'ID_ALMACEN'
DataType = datInteger
end
item
Name = 'NOMBRE_ALMACEN'
DataType = datString
Size = 255
end
item
Name = 'ID_PEDIDO'
DataType = datInteger
end
item
Name = 'REF_PEDIDOS_PROV'
DataType = datString
Size = 255
end
item
Name = 'ID_FACTURA'
DataType = datInteger
end
item
Name = 'REF_FACTURA'
DataType = datString
Size = 255
end
item
Name = 'REF_FACTURA_PROV'
DataType = datString
Size = 255
end
item
Name = 'CALLE'
DataType = datString
Size = 255
end
item
Name = 'CODIGO_POSTAL'
DataType = datString
Size = 10
end
item
Name = 'POBLACION'
DataType = datString
Size = 255
end
item
Name = 'PROVINCIA'
DataType = datString
Size = 255
end
item
Name = 'PERSONA_CONTACTO'
DataType = datString
Size = 255
end
item
Name = 'TELEFONO'
DataType = datString
Size = 25
end
item
Name = 'IMPORTE_NETO'
DataType = datCurrency
end
item
Name = 'IMPORTE_PORTE'
DataType = datCurrency
end
item
Name = 'DESCUENTO'
DataType = datFloat
end
item
Name = 'IMPORTE_DESCUENTO'
DataType = datCurrency
end
item
Name = 'BASE_IMPONIBLE'
DataType = datCurrency
end
item
Name = 'ID_TIPO_IVA'
DataType = datInteger
end
item
Name = 'IVA'
DataType = datFloat
end
item
Name = 'IMPORTE_IVA'
DataType = datCurrency
end
item
Name = 'IMPORTE_TOTAL'
DataType = datCurrency
end
item
Name = 'OBSERVACIONES'
DataType = datMemo
end
item
Name = 'INCIDENCIAS'
DataType = datMemo
end
item
Name = 'INCIDENCIAS_ACTIVAS'
DataType = datSmallInt
end
item
Name = 'FECHA_ALTA'
DataType = datDateTime
end
item
Name = 'FECHA_MODIFICACION'
DataType = datDateTime
end
item
Name = 'USUARIO'
DataType = datString
Size = 30
end
item
Name = 'ID_FORMA_PAGO'
DataType = datInteger
end
item
Name = 'ID_TIENDA'
DataType = datInteger
end
item
Name = 'TIENDA'
DataType = datString
Size = 255
end
item
Name = 'ID_ALBARAN'
DataType = datInteger
end
item
Name = 'REF_ALB_PROV'
DataType = datString
Size = 255
end
item
Name = 'REF_PED_PROV_PADRE'
DataType = datString
Size = 255
end
item
Name = 'CONCEPTO_BUSQUEDA'
DataType = datString
Size = 2000
end>
Params = <>
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteDataAdapter = rda_AlbaranesProveedor
LogicalName = 'AlbaranesProveedorConArticuloBuscado'
IndexDefs = <>
Left = 488
Top = 96
end
object ds_AlbaranesProveedorConArticuloBuscado: TDADataSource
DataSet = tbl_AlbaranesProveedorConArticuloBuscado.Dataset
DataTable = tbl_AlbaranesProveedorConArticuloBuscado
Left = 488
Top = 40
end
end

View File

@ -22,6 +22,8 @@ type
ds_AlbaranesProveedor_Detalles: TDADataSource;
tbl_ListaAnosAlbaranes: TDAMemDataTable;
ds_ListaAnosAlbaranes: TDADataSource;
tbl_AlbaranesProveedorConArticuloBuscado: TDAMemDataTable;
ds_AlbaranesProveedorConArticuloBuscado: TDADataSource;
procedure DAClientDataModuleCreate(Sender: TObject);
private
@ -35,6 +37,7 @@ type
function GetItems : IBizAlbaranProveedor; virtual;
function GetItem(const ID : Integer) : IBizAlbaranProveedor;
function NewItem : IBizAlbaranProveedor;
function GetAlbaranesConArticulo(const Concepto: String; const isEqual: Boolean = false): IBizAlbaranProveedor;
// Report
function GetReport(const AID: String): Binary;
@ -89,6 +92,55 @@ begin
end;
end;
function TDataModuleAlbaranesProveedor.GetAlbaranesConArticulo(const Concepto: String; const isEqual: Boolean): IBizAlbaranProveedor;
var
AAlbaranes : TDAMemDataTable;
Condicion, Filtro: TDAWhereExpression;
ACadena: String;
Campos : array[0..0] of string;
I : Integer;
begin
ShowHourglassCursor;
try
// Convertimos el texto a MAYÚSCULAS para compararlo con campos también en MAYÚSCULAS
ACadena := '%' + UpperCase(Concepto) + '%';
Campos[0] := fld_AlbaranesProveedorCONCEPTO_BUSQUEDA;
AAlbaranes := CloneDataTable(tbl_AlbaranesProveedorConArticuloBuscado);
AAlbaranes.BusinessRulesID := BIZ_CLIENT_ALBARAN_PROVEEDOR;
with AAlbaranes.DynamicWhere do
begin
Filtro := nil;
for I := Low(Campos) to High(Campos) do
begin
Condicion := NewBinaryExpression(
NewField('', Campos[I]),
NewConstant(ACadena, datString),
dboLike
);
if Filtro = nil then
Filtro := Condicion
else
Filtro := NewBinaryExpression(Filtro, Condicion, dboOr);
end;
// Aplicar filtro
if IsEmpty then
Expression := Filtro
else
Expression := NewBinaryExpression(Expression, Filtro, dboAnd);
end;
Result := (AAlbaranes as IBizAlbaranProveedor);
finally
HideHourglassCursor;
end;
end;
function TDataModuleAlbaranesProveedor.GetAnosItems: TStringList;
var
AListaAnos: TStringList;

View File

@ -12,6 +12,7 @@ type
function GetItems: IBizAlbaranProveedor;
function GetItem(const ID : Integer) : IBizAlbaranProveedor;
function NewItem : IBizAlbaranProveedor;
function GetAlbaranesConArticulo(const Concepto: String; const isEqual: Boolean = false): IBizAlbaranProveedor;
end;
implementation

View File

@ -213,6 +213,10 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
item
DatasetField = 'ID_ALBARAN'
TableField = 'ID_ALBARAN'
end
item
DatasetField = 'CONCEPTO_BUSQUEDA'
TableField = 'CONCEPTO_BUSQUEDA'
end>
end>
Name = 'AlbaranesProveedor'
@ -440,6 +444,10 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
Name = 'REF_PED_PROV_PADRE'
DataType = datString
Size = 255
end
item
Name = 'CONCEPTO_BUSQUEDA'
DataType = datString
end>
end
item
@ -619,6 +627,397 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
Name = 'ID_PEDIDO'
DataType = datInteger
end>
end
item
Params = <>
Statements = <
item
Connection = 'IBX'
TargetTable = 'V_ALBARANES_PROVEEDOR_BUSCAR'
SQL =
'SELECT '#10' ID, ID_EMPRESA, ID_PROVEEDOR, NOMBRE, FECHA_ALBARAN,' +
' '#10' REFERENCIA, REFERENCIA_PROVEEDOR, TIPO, ID_ALMACEN, '#10' N' +
'OMBRE_ALMACEN, ID_PEDIDO, REF_PEDIDOS_PROV, ID_FACTURA, '#10' REF' +
'_FACTURA, REF_FACTURA_PROV, CALLE, CODIGO_POSTAL, '#10' POBLACION' +
', PROVINCIA, PERSONA_CONTACTO, TELEFONO, IMPORTE_NETO, '#10' IMPO' +
'RTE_PORTE, DESCUENTO, IMPORTE_DESCUENTO, BASE_IMPONIBLE, '#10' ID' +
'_TIPO_IVA, IVA, IMPORTE_IVA, IMPORTE_TOTAL, OBSERVACIONES, '#10' ' +
'INCIDENCIAS, INCIDENCIAS_ACTIVAS, FECHA_ALTA, FECHA_MODIFICACION' +
', '#10' USUARIO, ID_FORMA_PAGO, ID_TIENDA, TIENDA, ID_ALBARAN, '#10' ' +
' REF_ALB_PROV, REF_PED_PROV_PADRE, CONCEPTO_BUSQUEDA'#10' FROM'#10' ' +
' V_ALBARANES_PROVEEDOR_BUSCAR'#10' WHERE {Where}'
StatementType = stSQL
ColumnMappings = <
item
DatasetField = 'ID'
TableField = 'ID'
end
item
DatasetField = 'ID_EMPRESA'
TableField = 'ID_EMPRESA'
end
item
DatasetField = 'ID_PROVEEDOR'
TableField = 'ID_PROVEEDOR'
end
item
DatasetField = 'NOMBRE'
TableField = 'NOMBRE'
end
item
DatasetField = 'FECHA_ALBARAN'
TableField = 'FECHA_ALBARAN'
end
item
DatasetField = 'REFERENCIA'
TableField = 'REFERENCIA'
end
item
DatasetField = 'REFERENCIA_PROVEEDOR'
TableField = 'REFERENCIA_PROVEEDOR'
end
item
DatasetField = 'TIPO'
TableField = 'TIPO'
end
item
DatasetField = 'ID_ALMACEN'
TableField = 'ID_ALMACEN'
end
item
DatasetField = 'NOMBRE_ALMACEN'
TableField = 'NOMBRE_ALMACEN'
end
item
DatasetField = 'ID_PEDIDO'
TableField = 'ID_PEDIDO'
end
item
DatasetField = 'REF_PEDIDOS_PROV'
TableField = 'REF_PEDIDOS_PROV'
end
item
DatasetField = 'ID_FACTURA'
TableField = 'ID_FACTURA'
end
item
DatasetField = 'REF_FACTURA'
TableField = 'REF_FACTURA'
end
item
DatasetField = 'REF_FACTURA_PROV'
TableField = 'REF_FACTURA_PROV'
end
item
DatasetField = 'CALLE'
TableField = 'CALLE'
end
item
DatasetField = 'CODIGO_POSTAL'
TableField = 'CODIGO_POSTAL'
end
item
DatasetField = 'POBLACION'
TableField = 'POBLACION'
end
item
DatasetField = 'PROVINCIA'
TableField = 'PROVINCIA'
end
item
DatasetField = 'PERSONA_CONTACTO'
TableField = 'PERSONA_CONTACTO'
end
item
DatasetField = 'TELEFONO'
TableField = 'TELEFONO'
end
item
DatasetField = 'IMPORTE_NETO'
TableField = 'IMPORTE_NETO'
end
item
DatasetField = 'IMPORTE_PORTE'
TableField = 'IMPORTE_PORTE'
end
item
DatasetField = 'DESCUENTO'
TableField = 'DESCUENTO'
end
item
DatasetField = 'IMPORTE_DESCUENTO'
TableField = 'IMPORTE_DESCUENTO'
end
item
DatasetField = 'BASE_IMPONIBLE'
TableField = 'BASE_IMPONIBLE'
end
item
DatasetField = 'ID_TIPO_IVA'
TableField = 'ID_TIPO_IVA'
end
item
DatasetField = 'IVA'
TableField = 'IVA'
end
item
DatasetField = 'IMPORTE_IVA'
TableField = 'IMPORTE_IVA'
end
item
DatasetField = 'IMPORTE_TOTAL'
TableField = 'IMPORTE_TOTAL'
end
item
DatasetField = 'OBSERVACIONES'
TableField = 'OBSERVACIONES'
end
item
DatasetField = 'INCIDENCIAS'
TableField = 'INCIDENCIAS'
end
item
DatasetField = 'INCIDENCIAS_ACTIVAS'
TableField = 'INCIDENCIAS_ACTIVAS'
end
item
DatasetField = 'FECHA_ALTA'
TableField = 'FECHA_ALTA'
end
item
DatasetField = 'FECHA_MODIFICACION'
TableField = 'FECHA_MODIFICACION'
end
item
DatasetField = 'USUARIO'
TableField = 'USUARIO'
end
item
DatasetField = 'ID_FORMA_PAGO'
TableField = 'ID_FORMA_PAGO'
end
item
DatasetField = 'ID_TIENDA'
TableField = 'ID_TIENDA'
end
item
DatasetField = 'TIENDA'
TableField = 'TIENDA'
end
item
DatasetField = 'ID_ALBARAN'
TableField = 'ID_ALBARAN'
end
item
DatasetField = 'REF_ALB_PROV'
TableField = 'REF_ALB_PROV'
end
item
DatasetField = 'REF_PED_PROV_PADRE'
TableField = 'REF_PED_PROV_PADRE'
end
item
DatasetField = 'CONCEPTO_BUSQUEDA'
TableField = 'CONCEPTO_BUSQUEDA'
end>
end>
Name = 'AlbaranesProveedorConArticuloBuscado'
Fields = <
item
Name = 'ID'
DataType = datAutoInc
GeneratorName = 'GEN_ALBARANES_PRO_ID'
DictionaryEntry = 'AlbaranesProveedor_ID'
InPrimaryKey = True
end
item
Name = 'ID_EMPRESA'
DataType = datInteger
DictionaryEntry = 'AlbaranesProveedor_ID_EMPRESA'
end
item
Name = 'ID_PROVEEDOR'
DataType = datInteger
end
item
Name = 'NOMBRE'
DataType = datString
Size = 255
end
item
Name = 'FECHA_ALBARAN'
DataType = datDateTime
end
item
Name = 'REFERENCIA'
DataType = datString
Size = 255
end
item
Name = 'REFERENCIA_PROVEEDOR'
DataType = datString
Size = 255
end
item
Name = 'TIPO'
DataType = datString
Size = 1
end
item
Name = 'ID_ALMACEN'
DataType = datInteger
end
item
Name = 'NOMBRE_ALMACEN'
DataType = datString
Size = 255
end
item
Name = 'ID_PEDIDO'
DataType = datInteger
end
item
Name = 'REF_PEDIDOS_PROV'
DataType = datString
Size = 255
end
item
Name = 'ID_FACTURA'
DataType = datInteger
end
item
Name = 'REF_FACTURA'
DataType = datString
Size = 255
end
item
Name = 'REF_FACTURA_PROV'
DataType = datString
Size = 255
end
item
Name = 'CALLE'
DataType = datString
Size = 255
end
item
Name = 'CODIGO_POSTAL'
DataType = datString
Size = 10
end
item
Name = 'POBLACION'
DataType = datString
Size = 255
end
item
Name = 'PROVINCIA'
DataType = datString
Size = 255
end
item
Name = 'PERSONA_CONTACTO'
DataType = datString
Size = 255
end
item
Name = 'TELEFONO'
DataType = datString
Size = 25
end
item
Name = 'IMPORTE_NETO'
DataType = datCurrency
end
item
Name = 'IMPORTE_PORTE'
DataType = datCurrency
end
item
Name = 'DESCUENTO'
DataType = datFloat
end
item
Name = 'IMPORTE_DESCUENTO'
DataType = datCurrency
end
item
Name = 'BASE_IMPONIBLE'
DataType = datCurrency
end
item
Name = 'ID_TIPO_IVA'
DataType = datInteger
end
item
Name = 'IVA'
DataType = datFloat
end
item
Name = 'IMPORTE_IVA'
DataType = datCurrency
end
item
Name = 'IMPORTE_TOTAL'
DataType = datCurrency
end
item
Name = 'OBSERVACIONES'
DataType = datMemo
end
item
Name = 'INCIDENCIAS'
DataType = datMemo
end
item
Name = 'INCIDENCIAS_ACTIVAS'
DataType = datSmallInt
end
item
Name = 'FECHA_ALTA'
DataType = datDateTime
end
item
Name = 'FECHA_MODIFICACION'
DataType = datDateTime
end
item
Name = 'USUARIO'
DataType = datString
Size = 30
end
item
Name = 'ID_FORMA_PAGO'
DataType = datInteger
end
item
Name = 'ID_TIENDA'
DataType = datInteger
end
item
Name = 'TIENDA'
DataType = datString
Size = 255
end
item
Name = 'ID_ALBARAN'
DataType = datInteger
end
item
Name = 'REF_ALB_PROV'
DataType = datString
Size = 255
end
item
Name = 'REF_PED_PROV_PADRE'
DataType = datString
Size = 255
end
item
Name = 'CONCEPTO_BUSQUEDA'
DataType = datString
Size = 2000
end>
end>
JoinDataTables = <>
UnionDataTables = <>

View File

@ -49,13 +49,37 @@
<DelphiCompile Include="AlbaranesProveedor_view.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\..\Lib\AlbaranesProveedor_controller.dcp" />
<DCCReference Include="..\..\Lib\AlbaranesProveedor_model.dcp" />
<DCCReference Include="..\..\Lib\Almacenes_controller.dcp" />
<DCCReference Include="..\..\Lib\Almacenes_model.dcp" />
<DCCReference Include="..\..\Lib\Articulos_view.dcp" />
<DCCReference Include="..\..\Lib\GUIBase.dcp" />
<DCCReference Include="..\..\Lib\PedProv_AlbProv_relation.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\adortl.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\AlbaranesProveedor_controller.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\AlbaranesProveedor_model.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\Almacenes_controller.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\Almacenes_model.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\Articulos_view.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\DataAbstract_Core_D11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\dbrtl.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\designide.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\dsnap.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\GUIBase.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\Jcl.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\JclVcl.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\JSDialog100.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\JvCoreD11R.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\JvPageCompsD11R.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\JvStdCtrlsD11R.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\JvSystemD11R.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\PedProv_AlbProv_relation.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\PngComponentsD10.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\PNG_D10.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\RemObjects_Core_D11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\rtl.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\tb2k_d10.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\tbx_d10.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\vcl.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\vclactnband.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\vcldb.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\vcljpg.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\vclx.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Views\xmlrtl.dcp" />
<DCCReference Include="uAlbaranesProveedorViewRegister.pas" />
<DCCReference Include="uEditorAlbaranDevProveedor.pas">
<Form>fEditorAlbaranDevProveedor</Form>
@ -89,6 +113,10 @@
<Form>fEditorElegirArticulosAlbaranProveedor</Form>
<DesignClass>TfEditorElegirArticulosAlbaranProveedor</DesignClass>
</DCCReference>
<DCCReference Include="uEditorResultadoAlbaranesConArticulo.pas">
<Form>fEditorResultadoAlbaranesConArticulo</Form>
<DesignClass>TEditorAlbaranesProveedorReport</DesignClass>
</DCCReference>
<DCCReference Include="uViewAlbaranDevProveedor.pas">
<Form>frViewAlbaranDevProveedor</Form>
<DesignClass>TCustomView</DesignClass>

View File

@ -11,7 +11,7 @@ uses
uEditorRegistryUtils, uEditorAlbaranesProveedor, uEditorAlbaranProveedor,
uEditorElegirArticulosAlbaranProveedor, uEditorDireccionEntregaAlbaranProveedor,
uEditorElegirAlbaranesProveedor, uEditorAlbaranesDevProveedor, uEditorAlbaranDevProveedor,
uEditorAlbaranesProveedorReport;
uEditorAlbaranesProveedorReport, uEditorResultadoAlbaranesConArticulo;
procedure RegisterViews;
begin
@ -23,6 +23,7 @@ begin
EditorRegistry.RegisterClass(TfEditorElegirArticulosAlbaranProveedor, 'EditorElegirArticulosAlbaranesProveedor');
EditorRegistry.RegisterClass(TfEditorElegirAlbaranesProveedor, 'EditorElegirAlbaranesProveedor');
EditorRegistry.RegisterClass(TfEditorAlbaranesProveedorPreview, 'EditorAlbaranesProveedorPreview');
EditorRegistry.RegisterClass(TfEditorResultadoAlbaranesConArticulo, 'EditorResultadoAlbaranesConArticulo');
end;
procedure UnregisterViews;
@ -35,6 +36,7 @@ begin
EditorRegistry.UnRegisterClass(TfEditorElegirArticulosAlbaranProveedor);
EditorRegistry.UnRegisterClass(TfEditorElegirAlbaranesProveedor);
EditorRegistry.UnRegisterClass(TfEditorAlbaranesProveedorPreview);
EditorRegistry.UnRegisterClass(TfEditorResultadoAlbaranesConArticulo);
end;
end.

View File

@ -144,10 +144,11 @@ inherited fEditorAlbaranesProveedor: TfEditorAlbaranesProveedor
ExplicitWidth = 1051
end
inherited TBXTMain2: TTBXToolbar
Left = 362
Left = 368
DockPos = 368
Visible = True
ExplicitLeft = 362
ExplicitWidth = 143
ExplicitLeft = 368
ExplicitWidth = 254
object TBXItem39: TTBXItem
Action = actGenerarFactura
DisplayMode = nbdmImageAndText
@ -160,6 +161,12 @@ inherited fEditorAlbaranesProveedor: TfEditorAlbaranesProveedor
Action = actGenerarDevolucion
DisplayMode = nbdmImageAndText
end
object TBXSeparatorItem17: TTBXSeparatorItem
end
object TBXItem41: TTBXItem
Action = actBuscarArticulo
DisplayMode = nbdmImageAndText
end
end
end
inherited StatusBar: TJvStatusBar
@ -214,6 +221,12 @@ inherited fEditorAlbaranesProveedor: TfEditorAlbaranesProveedor
OnExecute = actGenerarDevolucionExecute
OnUpdate = actGenerarDevolucionUpdate
end
object actBuscarArticulo: TAction
Caption = 'Buscar art'#237'culo'
ImageIndex = 23
OnExecute = actBuscarArticuloExecute
OnUpdate = actBuscarArticuloUpdate
end
end
inherited SmallImages: TPngImageList
PngImages = <

View File

@ -27,6 +27,9 @@ type
TBXItem38: TTBXItem;
actGenerarDevolucion: TAction;
TBXItem40: TTBXItem;
actBuscarArticulo: TAction;
TBXItem41: TTBXItem;
TBXSeparatorItem17: TTBXSeparatorItem;
procedure FormShow(Sender: TObject);
procedure actGenerarFacturaExecute(Sender: TObject);
procedure actGenerarFacturaUpdate(Sender: TObject);
@ -36,6 +39,8 @@ type
procedure actAsignarFacturaUpdate(Sender: TObject);
procedure actGenerarDevolucionExecute(Sender: TObject);
procedure actGenerarDevolucionUpdate(Sender: TObject);
procedure actBuscarArticuloExecute(Sender: TObject);
procedure actBuscarArticuloUpdate(Sender: TObject);
protected
FAlbaranes: IBizAlbaranProveedor;
@ -72,7 +77,7 @@ implementation
uses
uDataModuleAlbaranesProveedor, uDataModuleUsuarios, uFactuGES_App, cxControls,
// uGenerarFacturasProvAlbProvUtils,
uGenerarAlbaranesProvUtils, uStringsUtils,
uGenerarAlbaranesProvUtils, uStringsUtils, uEditorBuscarArticuloAlbaran,
uEditorBase, schAlbaranesProveedorClient_Intf,
uGridUtils, uDBSelectionListUtils;
@ -96,6 +101,42 @@ begin
and ViewGrid.esSeleccionCeldaDatos;
end;
procedure TfEditorAlbaranesProveedor.actBuscarArticuloExecute(Sender: TObject);
var
AEditor : TfEditorBuscarArticuloAlbaran;
AArticuloABuscar : String;
begin
inherited;
AArticuloABuscar := '';
AEditor := TfEditorBuscarArticuloAlbaran.Create(NIL);
if Assigned(AEditor) then
try
if (AEditor.ShowModal = mrOk) then
AArticuloABuscar := AEditor.cxConceptoABuscar.EditingValue;
finally
AEditor.Release;
AEditor := NIL;
end;
if not esCadenaVacia(AArticuloABuscar) then
begin
ShowHourglassCursor;
try
Controller.BuscarAlbaranesConArticulo(AArticuloABuscar);
finally
HideHourglassCursor;
end;
end;
end;
procedure TfEditorAlbaranesProveedor.actBuscarArticuloUpdate(Sender: TObject);
begin
inherited;
//
end;
procedure TfEditorAlbaranesProveedor.actEliminarUpdate(Sender: TObject);
begin
inherited;
@ -338,8 +379,7 @@ begin
end;
end;
procedure TfEditorAlbaranesProveedor.OnListaAnosChange(Sender: TObject;
const Text: string);
procedure TfEditorAlbaranesProveedor.OnListaAnosChange(Sender: TObject; const Text: string);
begin
Controller.FiltrarAno(Albaranes, DynWhereDataTable, Text);
if Albaranes.DataTable.Active then

View File

@ -1,12 +1,19 @@
inherited fEditorAlbaranesProveedorPreview: TfEditorAlbaranesProveedorPreview
Caption = 'Previsualizar el albar'#225'n de proveedor'
ExplicitWidth = 320
ExplicitHeight = 240
ExplicitWidth = 962
ExplicitHeight = 547
PixelsPerInch = 96
TextHeight = 13
inherited frxReport1: TfrxReport
Datasets = <>
Variables = <>
Style = <>
inherited JvNavPanelHeader: TJvNavPanelHeader
ExplicitTop = 78
end
inherited frxPDFExport1: TfrxPDFExport
ShowDialog = False
ShowProgress = False
EmbeddedFonts = True
HTMLTags = True
Author = 'FactuGES'
Subject = 'FactuGES'
Creator = 'FactuGES'
end
end

View File

@ -9,7 +9,8 @@ uses
TB2ExtItems, TBXExtItems, TBX, TB2Item, TB2Dock, TB2Toolbar, pngimage,
ExtCtrls, JvExControls, JvComponent, JvNavigationPane, uIEditorAlbaranesProveedorPreview,
JvExComCtrls, JvStatusBar, frxExportImage, frxExportPDF, frxDCtrl, frxClass,
frxDMPExport, frxGradient, frxChBox, frxCross, frxRich, frxOLE, frxBarcode;
frxDMPExport, frxGradient, frxChBox, frxCross, frxRich, frxOLE, frxBarcode,
frxExportText, frxExportRTF, frxExportMail, frxExportXLS;
type
TfEditorAlbaranesProveedorPreview = class(TfEditorPreview, IEditorAlbaranesProveedorPreview)

View File

@ -130,7 +130,7 @@ type
implementation
uses
umodulecontroller, uPlugins_Intf, cxControls, DB, uEditorRegistryUtils, schArticulosClient_Intf, uFactuGES_App,
uStringsUtils, umodulecontroller, uPlugins_Intf, cxControls, DB, uEditorRegistryUtils, schArticulosClient_Intf, uFactuGES_App,
uIEditorArticulos, uIEditorArticulo, uIEditorElegirArticulos, uBizIdiomas,
uDataModuleArticulos, uDataModuleUsuarios, uDAInterfaces, uTarifasController,
uDataTableUtils, uDateUtils, uROTypes, DateUtils, Controls, Windows;
@ -683,7 +683,10 @@ begin
if not Assigned(AArticulo) then
raise Exception.Create ('Articulo no asignado (EsEliminable)');
Result := AArticulo.REFERENCIA_PROV <> CTE_ART_COMISIONABLE_MODIFICABLE;
Result := (AArticulo.REFERENCIA_PROV <> CTE_ART_COMISIONABLE_MODIFICABLE) and
((AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR)
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_GERENCIA_ARTICULOS)
or (not ContainsAnyText(AArticulo.TARIFA, CTE_TARIFAS_DE_GERENCIA)));
end;
function TArticulosController.EsModificable(AArticulo: IBizArticulo): Boolean;
@ -691,7 +694,10 @@ begin
if not Assigned(AArticulo) then
raise Exception.Create ('Articulo no asignado (EsModificable)');
Result := AArticulo.REFERENCIA_PROV <> CTE_ART_COMISIONABLE_MODIFICABLE;
Result := (AArticulo.REFERENCIA_PROV <> CTE_ART_COMISIONABLE_MODIFICABLE) and
((AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR)
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_GERENCIA_ARTICULOS)
or (not ContainsAnyText(AArticulo.TARIFA, CTE_TARIFAS_DE_GERENCIA)));
end;
procedure TArticulosController.RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable);

View File

@ -8,7 +8,7 @@ uses
const
BIZ_CLIENT_ARTICULO = 'Client.Articulo';
CTE_TARIFA_COMPRAS = 'Compras';
CTE_TARIFA_COMPRAS = 'COMPRAS 2025';
CTE_ART_COMISIONABLE_MODIFICABLE = 'TXT_LIBRE_COMI';
type

View File

@ -118,14 +118,13 @@ inherited fEditorArticulo: TfEditorArticulo
inherited pgPaginas: TPageControl
Width = 951
Height = 536
ActivePage = pagPrecios
ExplicitWidth = 951
ExplicitHeight = 536
inherited pagGeneral: TTabSheet
ExplicitLeft = 4
ExplicitTop = 24
ExplicitWidth = 943
ExplicitHeight = 507
ExplicitHeight = 508
end
object pagPrecios: TTabSheet
Caption = 'Precios'
@ -154,30 +153,18 @@ inherited fEditorArticulo: TfEditorArticulo
end
inherited ToolBar1: TToolBar
Width = 943
ButtonWidth = 126
ExplicitWidth = 943
inherited ToolButton1: TToolButton
ExplicitWidth = 66
ExplicitWidth = 62
end
inherited ToolButton4: TToolButton
Left = 66
ExplicitWidth = 82
end
inherited ToolButton5: TToolButton
Left = 148
end
inherited ToolButton2: TToolButton
Left = 156
ExplicitLeft = 156
ExplicitWidth = 74
end
inherited ToolButton6: TToolButton
Left = 230
inherited ToolButton2: TToolButton
ExplicitWidth = 67
end
inherited ToolButton7: TToolButton
Left = 238
ExplicitLeft = 238
ExplicitWidth = 130
ExplicitWidth = 117
end
end
end

View File

@ -33,6 +33,8 @@ type
procedure actFamiliasExecute(Sender: TObject);
procedure actSubFamiliasExecute(Sender: TObject);
procedure actEliminarUpdate(Sender: TObject);
procedure actGuardarCerrarUpdate(Sender: TObject);
procedure actGuardarUpdate(Sender: TObject);
protected
FController : IArticulosController;
FArticulo: IBizArticulo;
@ -65,7 +67,7 @@ implementation
{$R *.dfm}
uses
uCustomEditor, uDataModuleArticulos, uDataModuleBase,
uFactuGES_App, uStringsUtils, uCustomEditor, uDataModuleArticulos, uDataModuleBase,
uBizFamilias, uFamiliasController, uBizSubFamilias, uSubFamiliasController;
{
@ -182,6 +184,22 @@ begin
end;
end;
procedure TfEditorArticulo.actGuardarCerrarUpdate(Sender: TObject);
begin
inherited;
(Sender as TAction).Enabled := ((AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR)
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_GERENCIA_ARTICULOS)
or (not ContainsAnyText(ViewArticulo.Articulo.TARIFA, CTE_TARIFAS_DE_GERENCIA)));
end;
procedure TfEditorArticulo.actGuardarUpdate(Sender: TObject);
begin
inherited;
(Sender as TAction).Enabled := ((AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR)
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_GERENCIA_ARTICULOS)
or (not ContainsAnyText(ViewArticulo.Articulo.TARIFA, CTE_TARIFAS_DE_GERENCIA)));
end;
procedure TfEditorArticulo.actSubFamiliasExecute(Sender: TObject);
var
ASubFamiliasController : ISubFamiliasController;

View File

@ -40,6 +40,9 @@ type
procedure OnListaTarifasChange(Sender: TObject; const Text: string);
procedure actBuscarArticuloExecute(Sender: TObject);
procedure actBuscarArticuloUpdate(Sender: TObject);
procedure actModificarUpdate(Sender: TObject);
procedure actNuevoUpdate(Sender: TObject);
procedure actDuplicarUpdate(Sender: TObject);
private
FArticulos: IBizArticulo;
FController : IArticulosController;
@ -72,7 +75,7 @@ type
implementation
uses
uCustomEditor, uDataModuleArticulos, uDataModuleUsuarios, uFactuGES_App,
uStringsUtils, uCustomEditor, uDataModuleArticulos, uDataModuleUsuarios, uFactuGES_App,
uEditorArticulo, uEditorDBBase, uBizFamilias, uFamiliasController,
cxGrid, cxGridCustomTableView, uGridUtils, uDBSelectionListUtils; //, uListaArticulos;
@ -296,6 +299,14 @@ begin
(Sender as TAction).Enabled := False;
end;
procedure TfEditorArticulos.actDuplicarUpdate(Sender: TObject);
begin
inherited;
(Sender as TAction).Enabled := ((AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR)
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_GERENCIA_ARTICULOS)
or (not ContainsAnyText(cbxListaAnos.Text, CTE_TARIFAS_DE_GERENCIA)));
end;
procedure TfEditorArticulos.actEliminarUpdate(Sender: TObject);
begin
inherited;
@ -319,6 +330,14 @@ begin
end;
end;
procedure TfEditorArticulos.actModificarUpdate(Sender: TObject);
begin
inherited;
if (ViewGrid.NumSeleccionados <> 1)
or (not Controller.EsModificable(FArticulos)) then
(Sender as TAction).Enabled := False;
end;
procedure TfEditorArticulos.actNoComisionableExecute(Sender: TObject);
var
AArticulos: IBizArticulo;
@ -351,6 +370,14 @@ begin
(Sender as TAction).Enabled := False;
end;
procedure TfEditorArticulos.actNuevoUpdate(Sender: TObject);
begin
inherited;
(Sender as TAction).Enabled := ((AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR)
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_GERENCIA_ARTICULOS)
or (not ContainsAnyText(cbxListaAnos.Text, CTE_TARIFAS_DE_GERENCIA)));
end;
procedure TfEditorArticulos.AsignarVista;
begin
ViewGrid := CreateView(TfrViewArticulos) as IViewArticulos;

View File

@ -1,7 +1,7 @@
inherited fEditorElegirArticulos: TfEditorElegirArticulos
Caption = 'Seleccionar art'#237'culos'
ClientWidth = 656
ExplicitWidth = 664
ExplicitWidth = 672
ExplicitHeight = 240
PixelsPerInch = 96
TextHeight = 13
@ -150,14 +150,19 @@ inherited fEditorElegirArticulos: TfEditorElegirArticulos
Left = 112
Top = 192
inherited actNuevo: TAction
Enabled = False
Visible = False
OnUpdate = nil
end
inherited actModificar: TAction
Enabled = False
Visible = False
OnUpdate = nil
end
inherited actEliminar: TAction
Enabled = False
Visible = False
OnUpdate = nil
end
inherited actPrevisualizar: TAction
Enabled = False

View File

@ -231,7 +231,8 @@ begin
//CAMBIO DE PRIVILEGIOS BANCO
// Solo verán los bancos el perfil administrador y gerencia
if (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR)
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_GERENCIA) then
or ((AppFactuGES.UsuarioActivo.ID_PERFIL >= CTE_PERFIL_GERENCIA_INI)
and (AppFactuGES.UsuarioActivo.ID_PERFIL <= CTE_PERFIL_GERENCIA_FIN)) then
begin
Condicion2 := NewBinaryExpression(NewField('', fld_SubCuentasREF_CUENTA), NewConstant(CTE_CUENTASBANCO, datInteger), dboEqual);
Condicion := NewBinaryExpression(Condicion1, Condicion2, dboOr);

View File

@ -19,22 +19,22 @@ inherited fEditorExtractoMovimientos: TfEditorExtractoMovimientos
000000180806000000E0773DF8000000017352474200AECE1CE9000000046741
4D410000B18F0BFC6105000000206348524D00007A26000080840000FA000000
80E8000075300000EA6000003A98000017709CBA513C00000009704859730000
17100000171001186111DB000001DD49444154484BBD96CB4E42311086F18DF4
297C01972EDC68E2DBF804EEDCB831716F8C1B23BA6001410D12428020720D20
721147BFD13939A92D17459B344C7B3ADF3F336D39674D4412FFD24ECED232AF
5B20F3D66D6CEE3B516F1D2B3CD41AEDBE64F38F5100D8F5762FB85E05D60FBE
443EE0899DAB4860EF74286E37128EA3F1AB4CA76FDFD6980F6B2301D80947C0
0DEBAE210A9B4CA6EAD81F8C74CC7CA82D250084A801E3D8E9BEA86D99F84466
0AF84A0410308EEC07B66F1D734B9588289395CF120146A05AEFEA987984D90F
B72D54221C2D72E080712C55DB6A5B26BE522D5D228080712C949B6AFFB84444
6E9B4A945622C008DC179E146E99F8363D98411C8EA3459ECDD72457ACAB4026
575511CBC44A153F594181C170EC4D1D20601C53B765B5432522FBA040B73F94
56E7596ACD9E546A1DC9971A7294F93C458071BC4E1775CC3CC2EEA6DB7DD1BF
0AF726C7E1C54A4B01440B1C300297A982DA9689952A7EB2821910B92F758080
71BCB879503B5422BB2FDE0C280B91531AA227CAF3644E618011B031BF08BB9B
6EF7C52B60602B0B9102064637011BF32C5E2E3B5DC112F16055FD5B06BC1376
B70F57D215EE9E2204A207B6E037BFF0F498D230667516BB7D9E4F045FE493C2
8545EFDB059CF96CF9CBFE0E985A0C641EEE88260000000049454E44AE426082}
170F0000170F0127BBAF0B000001CC49444154484BB5954D4E0241108539929E
C20BB874E146136FE309DCB97163E2DE18374674C102821A24840041E43780C8
8FD8F015539376E81EC6042A79B17ABADE7B55D509A68C313B4518D7B759B309
41E9C6DAFD83334B9938BC920B5FB4BA43932F7E8402E4CDEE20B85D0F31D83B
0F4C96E2A9E3C7D0E0F466BC060D8893E98F99CF7F9D7540EBC400EDA841345E
5B2BD3D96C2EC4E1682267BEFBE25F06045D230CB1D7FF965C277145AC813DAE
02418421F21EE4AE3A40249E802ED3B59529C210EBCDBE9CF98EB16B8A440610
B573C4118658A97725D7495CAB8A35B0C755208830C452B52DB9AB0E10B10674
A38F4A97BA228421BE953EE5AC93B81EDD6B608B43D4CEF3C58629949B42CC15
EA62A293E8AA6C13AFC1683CFD33AE02418421665EAA92BBEA00265E83FE706C
3ABD2FD3680F4CADD133C54ACB5CE6562B4218E253B62C67BE63ACABB227F11A
D8E2E55A27EC1C7184213E644A92EB24BA2ADBC46B80B83DAE02418421DE3FBF
4BEEAA0398780DB4735643F77479972E081161887AE62FC6D1476712AF810AEB
5AE81461C4801A28B8B3D7A5465E032EB6853503707274B11588B8CB20BCD806
D01303FDAF16076DC086AB2E8AC41125D261D258FE36ED1026B5004B20511E11
5D96300000000049454E44AE426082}
ExplicitLeft = 747
end
end
@ -42,7 +42,7 @@ inherited fEditorExtractoMovimientos: TfEditorExtractoMovimientos
Width = 1073
ExplicitWidth = 1073
inherited tbxMain: TTBXToolbar
ExplicitWidth = 632
ExplicitWidth = 611
end
inherited tbxFiltro: TTBXToolbar
inherited tbxEditFiltro: TTBXEditItem
@ -57,7 +57,7 @@ inherited fEditorExtractoMovimientos: TfEditorExtractoMovimientos
DockPos = 287
Visible = True
ExplicitLeft = 287
ExplicitWidth = 285
ExplicitWidth = 264
object TBXItem38: TTBXItem
Action = actPuntear
DisplayMode = nbdmImageAndText
@ -84,9 +84,9 @@ inherited fEditorExtractoMovimientos: TfEditorExtractoMovimientos
end
inline frViewExtractoMovimientos1: TfrViewExtractoMovimientos [3]
Left = 0
Top = 106
Top = 105
Width = 1073
Height = 681
Height = 682
Align = alClient
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@ -96,12 +96,12 @@ inherited fEditorExtractoMovimientos: TfEditorExtractoMovimientos
ParentFont = False
TabOrder = 3
ReadOnly = False
ExplicitTop = 106
ExplicitTop = 105
ExplicitWidth = 1073
ExplicitHeight = 681
ExplicitHeight = 682
inherited cxGrid: TcxGrid
Width = 1073
Height = 553
Height = 554
ExplicitWidth = 1073
ExplicitHeight = 553
inherited cxGridView: TcxGridDBTableView
@ -219,7 +219,7 @@ inherited fEditorExtractoMovimientos: TfEditorExtractoMovimientos
end
end
inherited pnlAgrupaciones: TTBXDockablePanel
Top = 655
Top = 656
ExplicitTop = 655
ExplicitWidth = 1073
inherited TBXAlignmentPanel1: TTBXAlignmentPanel

View File

@ -81,7 +81,8 @@ begin
raise Exception.Create('No hay ningún Diario asignado');
if (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR)
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_GERENCIA) then
or ((AppFactuGES.UsuarioActivo.ID_PERFIL >= CTE_PERFIL_GERENCIA_INI)
and (AppFactuGES.UsuarioActivo.ID_PERFIL <= CTE_PERFIL_GERENCIA_FIN)) then
begin
actSetBancoDePago.Enabled := True;
actSetBancoDePago.Visible := True;

View File

@ -14,18 +14,23 @@ inherited fEditorContacto: TfEditorContacto
inherited JvNavPanelHeader: TJvNavPanelHeader
Width = 924
Caption = 'Contacto'
ExplicitTop = 52
ExplicitWidth = 924
inherited Image1: TImage
Left = 897
ExplicitLeft = 607
end
inherited lblDesbloquear: TcxLabel
Left = 799
ExplicitLeft = 799
AnchorX = 844
AnchorY = 14
end
end
inherited TBXDock: TTBXDock
Width = 924
ExplicitWidth = 924
inherited tbxMain: TTBXToolbar
ExplicitWidth = 370
ExplicitWidth = 347
inherited TBXItem2: TTBXItem
Visible = False
end
@ -87,7 +92,7 @@ inherited fEditorContacto: TfEditorContacto
end
inherited pgPaginas: TPageControl
Width = 918
Height = 607
Height = 608
ExplicitTop = 112
ExplicitWidth = 918
ExplicitHeight = 607
@ -104,7 +109,7 @@ inherited fEditorContacto: TfEditorContacto
Left = 0
Top = 0
Width = 910
Height = 579
Height = 580
Align = alClient
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@ -115,7 +120,7 @@ inherited fEditorContacto: TfEditorContacto
TabOrder = 0
ReadOnly = False
ExplicitWidth = 910
ExplicitHeight = 579
ExplicitHeight = 580
inherited dxLayoutControl1: TdxLayoutControl
Width = 910
LookAndFeel = dxLayoutOfficeLookAndFeel
@ -192,7 +197,7 @@ inherited fEditorContacto: TfEditorContacto
Left = 0
Top = 0
Width = 910
Height = 579
Height = 580
Align = alClient
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@ -203,10 +208,10 @@ inherited fEditorContacto: TfEditorContacto
TabOrder = 0
ReadOnly = False
ExplicitWidth = 910
ExplicitHeight = 579
ExplicitHeight = 580
inherited cxGrid: TcxGrid
Width = 910
Height = 554
Height = 555
ExplicitWidth = 618
ExplicitHeight = 272
end

View File

@ -14,7 +14,8 @@ uses
uIEditorContacto, uContactosController, TBXStatusBars, JvExComCtrls,
JvStatusBar, uViewContactoDatosBancarios, dxLayoutLookAndFeels, JvLabel,
uDAInterfaces, uViewPersonalContacto, uViewDetallesGenerico;
uDAInterfaces, uViewPersonalContacto, uViewDetallesGenerico, cxControls,
cxContainer, cxEdit, cxLabel;
type
TfEditorContacto = class(TfEditorDBItem, IEditorContacto)
@ -55,7 +56,7 @@ implementation
{$R *.dfm}
uses
cxControls, uFactuGES_App, uCustomEditor, uDataModuleContactos,
uFactuGES_App, uCustomEditor, uDataModuleContactos,
uDMBase, uDataModuleUsuarios;
{

View File

@ -147,7 +147,8 @@ procedure TfrViewClienteDatosComerciales.CustomViewShow(Sender: TObject);
begin
inherited;
//Solo se ve campo comercial en abeto
if (AppFactuGES.EmpresaActiva.ID = CTE_EMPRESA_ABETO) then
//Se solicita 13/01/26 por EVA que tambien lo tenga GRADEN
{if (AppFactuGES.EmpresaActiva.ID = CTE_EMPRESA_ABETO) then
begin
dxLayoutControl1Group8.Enabled := True;
dxLayoutControl1Group8.Visible := True;
@ -156,7 +157,7 @@ begin
begin
dxLayoutControl1Group8.Enabled := False;
dxLayoutControl1Group8.Visible := False;
end;
end;}
end;
function TfrViewClienteDatosComerciales.GetContacto: IBizContacto;

View File

@ -12,9 +12,9 @@ type
procedure SetContratos(const Value: IBizContratosClienteBeneficios);
property Contratos: IBizContratosClienteBeneficios read GetContratos write SetContratos;
// function GetController : IContratosClienteController;
// procedure SetController (const Value : IContratosClienteController);
// property Controller : IContratosClienteController read GetController write SetController;
function GetController : IContratosClienteController;
procedure SetController (const Value : IContratosClienteController);
property Controller : IContratosClienteController read GetController write SetController;
end;

View File

@ -78,6 +78,7 @@ type
function DarListaAnosContratos: TStringList;
procedure FiltrarAno(AContrato: IBizContratoCliente; ADynWhereDataTable: WideString; const Ano: String);
procedure FiltrarAnoBeneficios(AContrato: IBizContratosClienteBeneficios; ADynWhereDataTable: WideString; const Ano: String);
procedure VerListadoBeneficios;
procedure VerDireccionEntrega(AContrato : IBizContratoCliente);
@ -174,6 +175,7 @@ type
function DarListaAnosContratos: TStringList;
procedure FiltrarAno(AContrato: IBizContratoCliente; ADynWhereDataTable: WideString; const Ano: String);
procedure FiltrarAnoBeneficios(AContrato: IBizContratosClienteBeneficios; ADynWhereDataTable: WideString; const Ano: String);
procedure VerListadoBeneficios;
procedure VerDireccionEntrega(AContrato : IBizContratoCliente);
@ -1046,16 +1048,28 @@ procedure TContratosClienteController.VerListadoBeneficios;
var
AContratosClienteBeneficios: IBizContratosClienteBeneficios;
AEditor : IEditorContratosClienteBeneficios;
Condicion: TDAWhereExpression;
begin
AEditor := NIL;
AContratosClienteBeneficios := FDataModule.GetContratosClienteBeneficios;
// Filtrar los contratos actuales por empresa
with AContratosClienteBeneficios.DataTable.DynamicWhere do
begin
// (ID_EMPRESA >= ID)
Condicion := NewBinaryExpression(NewField('', fld_ContratosClienteID_EMPRESA), NewConstant(AppFactuGES.EmpresaActiva.ID, datInteger), dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
CreateEditor('EditorContratosClienteBeneficios', IEditorContratosClienteBeneficios, AEditor);
if Assigned(AEditor) then
try
// AEditor.Controller := Self; //OJO ORDEN MUY IMPORTANTE
AEditor.Controller := Self; //OJO ORDEN MUY IMPORTANTE
AEditor.Contratos := AContratosClienteBeneficios;
AEditor.ShowModal;
@ -1505,6 +1519,35 @@ begin
end;
end;
procedure TContratosClienteController.FiltrarAnoBeneficios(AContrato: IBizContratosClienteBeneficios; ADynWhereDataTable: WideString; const Ano: String);
var
Condicion: TDAWhereExpression;
FechaIni: String;
FechaFin: String;
begin
AContrato.DataTable.DynamicWhere.Clear;
AContrato.DataTable.DynamicWhere.Xml := ADynWhereDataTable;
if (Ano <> 'Todos') then
begin
// Filtrar las facturas actuales por empresa
FechaIni := '01/01/' + Ano;
FechaFin := '31/12/' + Ano;
with AContrato.DataTable.DynamicWhere do
begin
// (FECHA_INICIO between FECHA_FIN)
Condicion := NewBinaryExpression(NewField('', fld_ContratosClienteFECHA_CONTRATO), NewConstant(FechaIni, datString), dboGreaterOrEqual);
Condicion := NewBinaryExpression(NewBinaryExpression(NewField('', fld_ContratosClienteFECHA_CONTRATO), NewConstant(FechaFin, datString), dboLessOrEqual), Condicion, dboAnd);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Condicion, Expression, dboAnd);
end;
end;
end;
procedure TContratosClienteController.FiltrarEmpresa(AContrato: IBizContratoCliente);
var
i: Integer;

View File

@ -650,6 +650,10 @@ inherited DataModuleContratosCliente: TDataModuleContratosCliente
Name = 'ID'
DataType = datInteger
end
item
Name = 'ID_EMPRESA'
DataType = datInteger
end
item
Name = 'REFERENCIA'
DataType = datString

View File

@ -9,19 +9,19 @@ const
{ Delta rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_ValoresDelta = '{53927053-5B9C-420E-869B-E4859BC566C2}';
RID_PropiedadesDelta = '{9C0E4AE7-8283-4E08-9A5D-4DD599EB4A87}';
RID_ListaAnosContratosDelta = '{4E603994-388B-4817-A281-9CE6BC8C4836}';
RID_ContratosClienteBeneficiosDelta = '{C2734792-1711-4F25-A7E4-F6A4E8DFE7F7}';
RID_RevisarContratosTerminadosDelta = '{C8885AF8-3A6B-475F-885B-7E09FD70B8F4}';
RID_ContratosClienteDelta = '{56A458E8-2C32-4EC7-AE69-43CE1D9D7DC4}';
RID_TiposCapitulosDelta = '{8376BFFA-46A3-4286-956F-1C50A09A89EF}';
RID_ContratosCliente_DetallesDelta = '{8B0DD083-BB6E-4E26-9585-E0F69BA9C7EE}';
RID_ValoresDelta = '{C3266B89-150B-4049-A0C4-4102E2E8F8B9}';
RID_PropiedadesDelta = '{56474A6A-5C7F-471C-8169-7B8E48ECFEAA}';
RID_ListaAnosContratosDelta = '{96ABDEBC-C270-4B33-BE52-4A23C899AB99}';
RID_ContratosClienteBeneficiosDelta = '{BF5B1CB0-9852-4FEC-9CDE-31679699FBFE}';
RID_RevisarContratosTerminadosDelta = '{DC94265D-6059-41BB-AB20-BE6C55D27265}';
RID_ContratosClienteDelta = '{3BD8CD13-B415-4532-B318-21F1417767DE}';
RID_TiposCapitulosDelta = '{A12E66CA-105C-46E8-9C0C-8F2F7DA4FC13}';
RID_ContratosCliente_DetallesDelta = '{3A3EACEA-B67B-4353-920A-7CE3FBEBEA1C}';
type
{ IValoresDelta }
IValoresDelta = interface(IValores)
['{53927053-5B9C-420E-869B-E4859BC566C2}']
['{C3266B89-150B-4049-A0C4-4102E2E8F8B9}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_PROPIEDADValue : Integer;
@ -79,7 +79,7 @@ type
{ IPropiedadesDelta }
IPropiedadesDelta = interface(IPropiedades)
['{9C0E4AE7-8283-4E08-9A5D-4DD599EB4A87}']
['{56474A6A-5C7F-471C-8169-7B8E48ECFEAA}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldDESCRIPCIONValue : String;
@ -137,7 +137,7 @@ type
{ IListaAnosContratosDelta }
IListaAnosContratosDelta = interface(IListaAnosContratos)
['{4E603994-388B-4817-A281-9CE6BC8C4836}']
['{96ABDEBC-C270-4B33-BE52-4A23C899AB99}']
{ Property getters and setters }
function GetOldANOValue : String;
@ -171,9 +171,10 @@ type
{ IContratosClienteBeneficiosDelta }
IContratosClienteBeneficiosDelta = interface(IContratosClienteBeneficios)
['{C2734792-1711-4F25-A7E4-F6A4E8DFE7F7}']
['{BF5B1CB0-9852-4FEC-9CDE-31679699FBFE}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
function GetOldREFERENCIAValue : String;
function GetOldFECHA_CONTRATOValue : DateTime;
function GetOldREFERENCIA_CLIENTEValue : String;
@ -191,6 +192,7 @@ type
{ Properties }
property OldID : Integer read GetOldIDValue;
property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue;
property OldREFERENCIA : String read GetOldREFERENCIAValue;
property OldFECHA_CONTRATO : DateTime read GetOldFECHA_CONTRATOValue;
property OldREFERENCIA_CLIENTE : String read GetOldREFERENCIA_CLIENTEValue;
@ -218,6 +220,12 @@ type
function GetOldIDIsNull: Boolean; virtual;
procedure SetIDValue(const aValue: Integer); virtual;
procedure SetIDIsNull(const aValue: Boolean); virtual;
function GetID_EMPRESAValue: Integer; virtual;
function GetID_EMPRESAIsNull: Boolean; virtual;
function GetOldID_EMPRESAValue: Integer; virtual;
function GetOldID_EMPRESAIsNull: Boolean; virtual;
procedure SetID_EMPRESAValue(const aValue: Integer); virtual;
procedure SetID_EMPRESAIsNull(const aValue: Boolean); virtual;
function GetREFERENCIAValue: String; virtual;
function GetREFERENCIAIsNull: Boolean; virtual;
function GetOldREFERENCIAValue: String; virtual;
@ -308,6 +316,10 @@ type
property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull;
property OldID : Integer read GetOldIDValue;
property OldIDIsNull : Boolean read GetOldIDIsNull;
property ID_EMPRESA : Integer read GetID_EMPRESAValue write SetID_EMPRESAValue;
property ID_EMPRESAIsNull : Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull;
property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue;
property OldID_EMPRESAIsNull : Boolean read GetOldID_EMPRESAIsNull;
property REFERENCIA : String read GetREFERENCIAValue write SetREFERENCIAValue;
property REFERENCIAIsNull : Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull;
property OldREFERENCIA : String read GetOldREFERENCIAValue;
@ -373,7 +385,7 @@ type
{ IRevisarContratosTerminadosDelta }
IRevisarContratosTerminadosDelta = interface(IRevisarContratosTerminados)
['{C8885AF8-3A6B-475F-885B-7E09FD70B8F4}']
['{DC94265D-6059-41BB-AB20-BE6C55D27265}']
{ Property getters and setters }
function GetOldREFERENCIAS_MODIFICADASValue : String;
function GetOldNUM_CONT_MODIFValue : Integer;
@ -419,7 +431,7 @@ type
{ IContratosClienteDelta }
IContratosClienteDelta = interface(IContratosCliente)
['{56A458E8-2C32-4EC7-AE69-43CE1D9D7DC4}']
['{3BD8CD13-B415-4532-B318-21F1417767DE}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
@ -1297,7 +1309,7 @@ type
{ ITiposCapitulosDelta }
ITiposCapitulosDelta = interface(ITiposCapitulos)
['{8376BFFA-46A3-4286-956F-1C50A09A89EF}']
['{A12E66CA-105C-46E8-9C0C-8F2F7DA4FC13}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldPOSICIONValue : Integer;
@ -1391,7 +1403,7 @@ type
{ IContratosCliente_DetallesDelta }
IContratosCliente_DetallesDelta = interface(IContratosCliente_Detalles)
['{8B0DD083-BB6E-4E26-9585-E0F69BA9C7EE}']
['{3A3EACEA-B67B-4353-920A-7CE3FBEBEA1C}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_CONTRATOValue : Integer;
@ -1939,6 +1951,37 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteBeneficiosID] := Null;
end;
function TContratosClienteBeneficiosBusinessProcessorRules.GetID_EMPRESAValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteBeneficiosID_EMPRESA];
end;
function TContratosClienteBeneficiosBusinessProcessorRules.GetID_EMPRESAIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteBeneficiosID_EMPRESA]);
end;
function TContratosClienteBeneficiosBusinessProcessorRules.GetOldID_EMPRESAValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContratosClienteBeneficiosID_EMPRESA];
end;
function TContratosClienteBeneficiosBusinessProcessorRules.GetOldID_EMPRESAIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContratosClienteBeneficiosID_EMPRESA]);
end;
procedure TContratosClienteBeneficiosBusinessProcessorRules.SetID_EMPRESAValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteBeneficiosID_EMPRESA] := aValue;
end;
procedure TContratosClienteBeneficiosBusinessProcessorRules.SetID_EMPRESAIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteBeneficiosID_EMPRESA] := Null;
end;
function TContratosClienteBeneficiosBusinessProcessorRules.GetREFERENCIAValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContratosClienteBeneficiosREFERENCIA];

View File

@ -137,12 +137,12 @@ object srvContratosCliente: TsrvContratosCliente
TargetTable = 'V_CONTRATOS_BENEFICIOS'
Name = 'IBX'
SQL =
'SELECT '#10' ID, REFERENCIA, FECHA_CONTRATO, REFERENCIA_CLIENTE, ' +
'NOMBRE, NIF_CIF, IMPORTE_NETO,'#10' IMPORTE_DESCUENTO, BASE_IMPON' +
'IBLE, IMPORTE_FACTURAS_PROVEEDOR, '#10' IMPORTE_BENEFICIO, PORCEN' +
'TAJE_BENEFICIO, IMPORTE_FACTURAS_CLIENTE,'#10' IMPORTE_BENEFICIO_' +
'REAL, PORCENTAJE_BENEFICIO_REAL'#10' FROM'#10' V_CONTRATOS_BENEFICIO' +
'S'#10' WHERE {Where}'#10
'SELECT '#10' ID, ID_EMPRESA, REFERENCIA, FECHA_CONTRATO, REFERENC' +
'IA_CLIENTE, NOMBRE, NIF_CIF, IMPORTE_NETO,'#10' IMPORTE_DESCUENTO' +
', BASE_IMPONIBLE, IMPORTE_FACTURAS_PROVEEDOR, '#10' IMPORTE_BENEF' +
'ICIO, PORCENTAJE_BENEFICIO, IMPORTE_FACTURAS_CLIENTE,'#10' IMPORT' +
'E_BENEFICIO_REAL, PORCENTAJE_BENEFICIO_REAL'#10' FROM'#10' V_CONTRAT' +
'OS_BENEFICIOS'#10' WHERE {Where}'#10
StatementType = stSQL
ColumnMappings = <
item
@ -204,6 +204,10 @@ object srvContratosCliente: TsrvContratosCliente
item
DatasetField = 'PORCENTAJE_BENEFICIO_REAL'
TableField = 'PORCENTAJE_BENEFICIO_REAL'
end
item
DatasetField = 'ID_EMPRESA'
TableField = 'ID_EMPRESA'
end>
end>
Name = 'ContratosClienteBeneficios'
@ -212,6 +216,10 @@ object srvContratosCliente: TsrvContratosCliente
Name = 'ID'
DataType = datInteger
end
item
Name = 'ID_EMPRESA'
DataType = datInteger
end
item
Name = 'REFERENCIA'
DataType = datString

View File

@ -193,6 +193,10 @@ inherited fEditorContratoCliente: TfEditorContratoCliente
object pagContenido: TTabSheet
Caption = 'Contenido'
ImageIndex = 1
ExplicitLeft = 0
ExplicitTop = 0
ExplicitWidth = 0
ExplicitHeight = 0
inline frViewDetallesContratoCliente1: TfrViewDetallesContratoCliente
Left = 0
Top = 0
@ -214,29 +218,16 @@ inherited fEditorContratoCliente: TfEditorContratoCliente
inherited ToolBar1: TToolBar
Width = 1320
Height = 24
ButtonWidth = 110
ExplicitWidth = 1320
ExplicitHeight = 24
inherited ToolButton1: TToolButton
ExplicitWidth = 109
inherited ToolButton4: TToolButton
Wrap = False
end
inherited ToolButton14: TToolButton
Left = 109
ExplicitLeft = 109
end
inherited ToolButton2: TToolButton
Left = 143
ExplicitLeft = 143
ExplicitWidth = 114
end
inherited ToolButton3: TToolButton
Left = 257
ExplicitLeft = 257
end
inherited ToolButton4: TToolButton
Left = 312
Wrap = False
ExplicitLeft = 312
Left = 334
Top = 0
ExplicitLeft = 334
ExplicitTop = 0
end
inherited FontName: TJvFontComboBox
Left = 368
@ -252,22 +243,22 @@ inherited fEditorContratoCliente: TfEditorContratoCliente
ExplicitTop = 0
ExplicitWidth = 124
end
inherited UpDown1: TUpDown [7]
inherited UpDown1: TUpDown
Left = 637
Top = 0
ExplicitLeft = 637
ExplicitTop = 0
end
inherited ToolButton6: TToolButton [8]
inherited ToolButton13: TToolButton
Left = 654
Top = 0
ExplicitLeft = 654
ExplicitTop = 0
end
inherited ToolButton13: TToolButton
Left = 688
inherited ToolButton6: TToolButton
Left = 662
Top = 0
ExplicitLeft = 688
ExplicitLeft = 662
ExplicitTop = 0
end
inherited ToolButton7: TToolButton
@ -282,16 +273,16 @@ inherited fEditorContratoCliente: TfEditorContratoCliente
ExplicitLeft = 730
ExplicitTop = 0
end
inherited ToolButton9: TToolButton
inherited ToolButton12: TToolButton
Left = 764
Top = 0
ExplicitLeft = 764
ExplicitTop = 0
end
inherited ToolButton12: TToolButton
Left = 798
inherited ToolButton9: TToolButton
Left = 772
Top = 0
ExplicitLeft = 798
ExplicitLeft = 772
ExplicitTop = 0
end
inherited ToolButton10: TToolButton
@ -401,6 +392,10 @@ inherited fEditorContratoCliente: TfEditorContratoCliente
object pagInicidencias: TTabSheet
Caption = 'Incidencias'
ImageIndex = 2
ExplicitLeft = 0
ExplicitTop = 0
ExplicitWidth = 0
ExplicitHeight = 0
inline frViewIncidenciasCli: TfrViewIncidencias
Left = 0
Top = 0
@ -478,10 +473,6 @@ inherited fEditorContratoCliente: TfEditorContratoCliente
inherited PnlComentario: TPanel
Width = 1334
ExplicitWidth = 1334
inherited lbComentario: TLabel
Width = 1324
Height = 25
end
end
inline frViewTotales1: TfrViewTotales [5]
Left = 0

View File

@ -264,8 +264,9 @@ begin
raise Exception.Create('No hay ningún Contrato asignado');
//El usuario GERENCIA)
if (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_GERENCIA)
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR) then
if (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR)
or ((AppFactuGES.UsuarioActivo.ID_PERFIL >= CTE_PERFIL_GERENCIA_INI)
and (AppFactuGES.UsuarioActivo.ID_PERFIL <= CTE_PERFIL_GERENCIA_FIN)) then
begin
lblDesbloquear.Visible := True;

View File

@ -916,7 +916,21 @@ begin
if Assigned(FController) then
ListaAnos := FController.DarListaAnosContratos;
inherited;
//Pasamos del padre ya que refresh da error
// inherited;
ShowHourglassCursor;
ViewGrid.SaveGridStatus;
ViewGrid._FocusedView.BeginUpdate;
try
Contratos.DataTable.Active := False;
Contratos.DataTable.Active := True;
finally
ViewGrid._FocusedView.EndUpdate;
ViewGrid.RestoreGridStatus;
HideHourglassCursor;
end;
end;
procedure TfEditorContratosCliente.SetController(const Value: IContratosClienteController);

View File

@ -1,5 +1,6 @@
inherited fEditorContratosClienteBeneficios: TfEditorContratosClienteBeneficios
Caption = 'fEditorContratosClienteBeneficios'
ExplicitWidth = 559
PixelsPerInch = 96
TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader
@ -7,14 +8,27 @@ inherited fEditorContratosClienteBeneficios: TfEditorContratosClienteBeneficios
end
inherited TBXDock: TTBXDock
inherited tbxMain: TTBXToolbar
ExplicitWidth = 284
ExplicitWidth = 310
end
inherited tbxFiltro: TTBXToolbar
ExplicitWidth = 356
inherited lblAno: TTBXLabelItem
Visible = True
end
inherited cbxListaAnos: TTBXComboBoxItem
Visible = True
end
end
inherited TBXTMain2: TTBXToolbar
Left = 356
ExplicitLeft = 356
end
end
inline frViewContratosClienteBeneficios1: TfrViewContratosClienteBeneficios [3]
Left = 0
Top = 102
Top = 105
Width = 543
Height = 323
Height = 320
Align = alClient
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@ -24,15 +38,32 @@ inherited fEditorContratosClienteBeneficios: TfEditorContratosClienteBeneficios
ParentFont = False
TabOrder = 3
ReadOnly = False
ExplicitTop = 102
ExplicitTop = 105
ExplicitWidth = 543
ExplicitHeight = 323
ExplicitHeight = 320
inherited cxGrid: TcxGrid
Width = 543
Height = 195
Height = 192
ExplicitWidth = 543
ExplicitHeight = 195
ExplicitHeight = 192
inherited cxGridView: TcxGridDBTableView
DataController.Summary.FooterSummaryItems = <
item
Kind = skSum
Column = frViewContratosClienteBeneficios1.cxGridViewBASE_IMPONIBLE
end
item
Kind = skSum
Column = frViewContratosClienteBeneficios1.cxGridViewIMPORTE_BENEFICIO
end
item
Kind = skSum
Column = frViewContratosClienteBeneficios1.cxGridViewIMPORTE_BENEFICIO_REAL
end
item
Kind = skSum
Column = frViewContratosClienteBeneficios1.cxGridViewIMPORTE_FACTURAS_PROVEEDOR
end>
inherited cxGridViewIMPORTE_NETO: TcxGridDBColumn
HeaderAlignmentHorz = taRightJustify
end
@ -66,20 +97,36 @@ inherited fEditorContratosClienteBeneficios: TfEditorContratosClienteBeneficios
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 250
Width = 250
end
inherited edtFechaIniFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 250
Width = 250
end
inherited edtFechaFinFiltro: TcxDateEdit
Left = 337
Left = 315
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 337
ExplicitLeft = 315
ExplicitWidth = 250
Width = 250
end
inherited txtFiltroTodo2: TcxTextEdit
Left = 315
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 315
ExplicitWidth = 250
Width = 250
end
end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel
@ -93,8 +140,8 @@ inherited fEditorContratosClienteBeneficios: TfEditorContratosClienteBeneficios
end
end
inherited pnlAgrupaciones: TTBXDockablePanel
Top = 297
ExplicitTop = 297
Top = 294
ExplicitTop = 294
ExplicitWidth = 543
inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 543
@ -146,10 +193,6 @@ inherited fEditorContratosClienteBeneficios: TfEditorContratosClienteBeneficios
Enabled = False
Visible = False
end
inherited actExportarExcel: TAction
Enabled = False
Visible = False
end
end
inherited SmallImages: TPngImageList [5]
end

View File

@ -10,23 +10,31 @@ uses
TB2ExtItems, TBXExtItems, TB2Item, TB2Dock, TB2Toolbar, pngimage, ExtCtrls,
JvExControls, JvNavigationPane, uIEditorContratosClienteBeneficios, uBizContratosCliente,
uCustomView, uViewBase, uViewGridBase, uViewGrid,
uViewContratosClienteBeneficios;
uViewContratosClienteBeneficios, uContratosClienteController;
type
TfEditorContratosClienteBeneficios = class(TfEditorGridBase, IEditorContratosClienteBeneficios)
frViewContratosClienteBeneficios1: TfrViewContratosClienteBeneficios;
procedure FormShow(Sender: TObject);
procedure OnListaAnosChange(Sender: TObject; const Text: string);
private
FContratos: IBizContratosClienteBeneficios;
FController : IContratosClienteController;
function GetContratos: IBizContratosClienteBeneficios;
procedure SetContratos(const Value: IBizContratosClienteBeneficios);
function GetController : IContratosClienteController;
procedure SetController (const Value : IContratosClienteController);
protected
procedure ImprimirInterno; override;
procedure PrevisualizarInterno; override;
procedure RefrescarInterno; override;
public
property Contratos: IBizContratosClienteBeneficios read GetContratos write SetContratos;
property Controller : IContratosClienteController read GetController write SetController;
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
end;
@ -36,6 +44,9 @@ var
implementation
uses
cxControls;
{$R *.dfm}
{ TfEditorContratosClienteBeneficios }
@ -54,6 +65,8 @@ end;
procedure TfEditorContratosClienteBeneficios.FormShow(Sender: TObject);
begin
cbxListaAnos.OnChange := OnListaAnosChange; //OJO SIEMPRE ANTES DEL INHERITED
inherited;
ViewGrid := frViewContratosClienteBeneficios1;
FContratos.Active := True;
@ -65,22 +78,72 @@ begin
Result := FContratos;
end;
function TfEditorContratosClienteBeneficios.GetController: IContratosClienteController;
begin
Result := FController;
end;
procedure TfEditorContratosClienteBeneficios.ImprimirInterno;
begin
inherited;
end;
procedure TfEditorContratosClienteBeneficios.OnListaAnosChange(Sender: TObject; const Text: string);
begin
Controller.FiltrarAnoBeneficios(Contratos, DynWhereDataTable, Text);
if Contratos.DataTable.Active then
RefrescarInterno;
end;
procedure TfEditorContratosClienteBeneficios.PrevisualizarInterno;
begin
inherited;
end;
procedure TfEditorContratosClienteBeneficios.RefrescarInterno;
begin
//Volvemos a cargar los años de los Contratos
if Assigned(FController) then
ListaAnos := FController.DarListaAnosContratos;
//Pasamos del padre ya que refresh da error
// inherited;
ShowHourglassCursor;
ViewGrid.SaveGridStatus;
ViewGrid._FocusedView.BeginUpdate;
try
Contratos.DataTable.Active := False;
Contratos.DataTable.Active := True;
finally
ViewGrid._FocusedView.EndUpdate;
ViewGrid.RestoreGridStatus;
HideHourglassCursor;
end;
end;
procedure TfEditorContratosClienteBeneficios.SetContratos(const Value: IBizContratosClienteBeneficios);
begin
FContratos := Value;
frViewContratosClienteBeneficios1.Contratos := FContratos;
if Assigned(FContratos) then
begin
//Se guarda el where de la sentencia origen, por si el editor tiene filtros que
//afecten a este where y en un futuro se desea volver al where origen (filtro de año))
DynWhereDataTable := FContratos.DataTable.DynamicWhere.Xml;
frViewContratosClienteBeneficios1.Contratos := FContratos;
end;
end;
procedure TfEditorContratosClienteBeneficios.SetController(const Value: IContratosClienteController);
begin
FController := Value;
if Assigned(FController) then
ListaAnos := FController.DarListaAnosContratos;
end;
end.

View File

@ -1,15 +1,18 @@
inherited fEditorContratosClientePreview: TfEditorContratosClientePreview
Caption = 'Previsualizar el pedidos proveedor'
ExplicitWidth = 962
ExplicitHeight = 547
PixelsPerInch = 96
TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader
ExplicitTop = 78
inherited Image1: TImage
ExplicitLeft = 768
end
end
inherited TBXDock: TTBXDock
inherited TBXToolbar1: TTBXToolbar
ExplicitWidth = 540
ExplicitWidth = 560
object TBXItem58: TTBXItem [1]
Action = actExportarRTF
DisplayMode = nbdmTextOnlyInMenus
@ -17,4 +20,13 @@ inherited fEditorContratosClientePreview: TfEditorContratosClientePreview
end
end
end
inherited frxPDFExport1: TfrxPDFExport
ShowDialog = False
ShowProgress = False
EmbeddedFonts = True
HTMLTags = True
Author = 'FactuGES'
Subject = 'FactuGES'
Creator = 'FactuGES'
end
end

View File

@ -1,6 +1,6 @@
inherited frViewContratoCliente: TfrViewContratoCliente
Width = 1138
Height = 481
Width = 1280
Height = 838
Align = alClient
OnCreate = CustomViewCreate
OnDestroy = CustomViewDestroy
@ -9,8 +9,8 @@ inherited frViewContratoCliente: TfrViewContratoCliente
object dxLayoutControl1: TdxLayoutControl
Left = 0
Top = 0
Width = 1138
Height = 481
Width = 1280
Height = 838
Align = alClient
ParentBackground = True
TabOrder = 0
@ -19,8 +19,8 @@ inherited frViewContratoCliente: TfrViewContratoCliente
ExplicitWidth = 451
ExplicitHeight = 304
DesignSize = (
1138
481)
1280
838)
object edtFechaContrato: TcxDBDateEdit
Left = 117
Top = 82
@ -45,7 +45,7 @@ inherited frViewContratoCliente: TfrViewContratoCliente
Width = 129
end
object memObservaciones: TcxDBMemo
Left = 625
Left = 704
Top = 309
Anchors = [akLeft, akTop, akRight, akBottom]
DataBinding.DataField = 'OBSERVACIONES'
@ -124,7 +124,7 @@ inherited frViewContratoCliente: TfrViewContratoCliente
Width = 122
end
object bFormasPago: TButton
Left = 463
Left = 542
Top = 784
Width = 132
Height = 21
@ -163,7 +163,7 @@ inherited frViewContratoCliente: TfrViewContratoCliente
Width = 260
end
inline frViewDatosYSeleccionClienteContrato1: TfrViewDatosYSeleccionClienteContrato
Left = 625
Left = 704
Top = 28
Width = 480
Height = 245
@ -175,7 +175,7 @@ inherited frViewContratoCliente: TfrViewContratoCliente
ParentFont = False
TabOrder = 13
ReadOnly = False
ExplicitLeft = 625
ExplicitLeft = 704
ExplicitTop = 28
ExplicitWidth = 480
inherited dxLayoutControl1: TdxLayoutControl
@ -190,24 +190,24 @@ inherited frViewContratoCliente: TfrViewContratoCliente
Width = 103
end
inherited bVerFichaCliente: TBitBtn
Left = 270
ExplicitLeft = 270
Left = 335
ExplicitLeft = 335
end
inherited edtDireccion: TcxMemo
ExplicitWidth = 121
Width = 121
end
inherited bElegirDireccion: TButton
Left = 439
ExplicitLeft = 439
Left = 504
ExplicitLeft = 504
end
inherited edtTelefonos: TcxTextEdit
ExplicitWidth = 193
Width = 193
end
inherited edtReferencia: TcxDBTextEdit
Left = 297
ExplicitLeft = 297
Left = 329
ExplicitLeft = 329
ExplicitWidth = 103
Width = 103
end
@ -291,7 +291,7 @@ inherited frViewContratoCliente: TfrViewContratoCliente
Width = 27
end
object cbTipoContrato: TcxDBComboBox
Left = 411
Left = 454
Top = 82
DataBinding.DataField = 'TIPO_CONTRATO'
DataBinding.DataSource = DADataSource
@ -372,9 +372,9 @@ inherited frViewContratoCliente: TfrViewContratoCliente
Width = 425
end
inherited bModificar: TBitBtn
Left = 383
Left = 462
Top = 166
ExplicitLeft = 383
ExplicitLeft = 462
ExplicitTop = 166
end
inherited txtDireccion: TStaticText
@ -425,8 +425,8 @@ inherited frViewContratoCliente: TfrViewContratoCliente
Width = 562
end
inherited Button3: TBitBtn
Left = 371
ExplicitLeft = 371
Left = 450
ExplicitLeft = 450
end
end
end
@ -452,8 +452,8 @@ inherited frViewContratoCliente: TfrViewContratoCliente
Width = 224
end
inherited Button3: TBitBtn
Left = 343
ExplicitLeft = 343
Left = 422
ExplicitLeft = 422
end
end
end

View File

@ -156,13 +156,19 @@ begin
//FILTRO DE EMPRESAS
if (AppFactuGES.EmpresaActiva.ID = CTE_EMPRESA_ABETO) then
begin
dxLayoutControl1Group10.Visible := true;
//Solo se ve campo comercial en abeto
//Se solicita 13/01/26 por EVA que tambien lo tenga GRADEN
//dxLayoutControl1Group10.Visible := true;
frViewDatosYSeleccionInstalador1.Visible := true;
dxLayoutControl1Item15.visible := true;
end
else
begin
dxLayoutControl1Group10.Visible := false;
//Solo se ve campo comercial en abeto
//Se solicita 13/01/26 por EVA que tambien lo tenga GRADEN
//dxLayoutControl1Group10.Visible := false;
frViewDatosYSeleccionInstalador1.Visible := false;
dxLayoutControl1Item15.visible := false;
end;

View File

@ -2,6 +2,23 @@ inherited frViewContratosClienteBeneficios: TfrViewContratosClienteBeneficios
OnDestroy = CustomViewDestroy
inherited cxGrid: TcxGrid
inherited cxGridView: TcxGridDBTableView
DataController.Summary.FooterSummaryItems = <
item
Kind = skSum
Column = cxGridViewBASE_IMPONIBLE
end
item
Kind = skSum
Column = cxGridViewIMPORTE_BENEFICIO
end
item
Kind = skSum
Column = cxGridViewIMPORTE_BENEFICIO_REAL
end
item
Kind = skSum
Column = cxGridViewIMPORTE_FACTURAS_PROVEEDOR
end>
object cxGridViewID: TcxGridDBColumn
DataBinding.FieldName = 'ID'
Visible = False
@ -108,6 +125,12 @@ inherited frViewContratosClienteBeneficios: TfrViewContratosClienteBeneficios
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
end
inherited txtFiltroTodo2: TcxTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
end
end
end
end

View File

@ -37,6 +37,7 @@ type
function GetContratos: IBizContratosClienteBeneficios;
procedure SetContratos(const Value: IBizContratosClienteBeneficios);
procedure AnadirFiltroFechas;
public
property Contratos: IBizContratosClienteBeneficios read GetContratos write SetContratos;
end;
@ -50,6 +51,26 @@ implementation
{ TfrViewContratosClienteBeneficios }
procedure TfrViewContratosClienteBeneficios.AnadirFiltroFechas;
var
Columna: TcxGridDBColumn;
Fecha1, Fecha2: Variant;
FFiltro : TcxFilterCriteriaItemList;
begin
Fecha1 := frViewFiltroBase1.edtFechaIniFiltro.EditValue;
Fecha2 := frViewFiltroBase1.edtFechaFinFiltro.EditValue;
if not VarIsNull(Fecha1)
and not VarIsNull(Fecha2) then
begin
cxGridView.DataController.Filter.Options := [fcoCaseInsensitive, fcoSoftCompare];
FFiltro := AddFilterGrid(fboAnd);
Columna := (cxGridView as TcxGridDBTableView).GetColumnByFieldName('FECHA_CONTRATO');
FFiltro.AddItem(Columna, foBetween, varArrayOf([Fecha1, Fecha2]), VarToStr(Fecha1) + ' and ' + VarToStr(Fecha2));
end;
end;
procedure TfrViewContratosClienteBeneficios.CustomViewDestroy(Sender: TObject);
begin
FContratos := NIL;

View File

@ -62,6 +62,7 @@ type
function AsignarTipoOperacion(AFacturas: IBizFacturaCliente): Boolean;
function CambiarComercial(AFactura : IBizFacturaCliente; AComercial: IBizComercial): Boolean;
function CambiarContrato(AFactura : IBizFacturaCliente; AContrato: IBizContratoCliente): Boolean;
function enviarVerifactu(AFactura: IBizFacturaCliente; AllItems: Boolean = false; AListaCausas: TStringList = nil): Boolean;
end;
TFacturasClienteController = class(TControllerBase, IFacturasClienteController)
@ -139,6 +140,7 @@ type
function AsignarTipoOperacion(AFacturas: IBizFacturaCliente): Boolean;
function CambiarComercial(AFactura : IBizFacturaCliente; AComercial: IBizComercial): Boolean;
function CambiarContrato(AFactura : IBizFacturaCliente; AContrato: IBizContratoCliente): Boolean;
function enviarVerifactu(AFactura: IBizFacturaCliente; AllItems: Boolean = false; AListaCausas: TStringList = nil): Boolean;
end;
implementation
@ -1157,6 +1159,72 @@ begin
end;
end;
function TFacturasClienteController.enviarVerifactu(AFactura: IBizFacturaCliente; AllItems: Boolean; AListaCausas: TStringList): Boolean;
//Solo devolverá true en el caso de eliminar todos y cada uno de los elementos a eliminar
var
bModificado: Boolean;
ACausa: Variant;
begin
bModificado := True;
if not Assigned(AFactura) then
raise Exception.Create ('Factura no asignada');
ShowHourglassCursor;
try
if not AFactura.DataTable.Active then
AFactura.DataTable.Active := True;
if (AFactura.State in dsEditModes) then
AFactura.Cancel;
//Siempre modificaremos el seleccionado tanto si es una lista de facturas a eliminar como si es la propia lista del editor.
if AFactura.VERIFACTU = 0 then
begin
if not AFactura.DataTable.Editing then
AFactura.DataTable.Edit;
AFactura.VERIFACTU := 1;
AFactura.DataTable.Post;
end;
//En el caso de querer modificar todos los items del objeto AFactura
if AllItems then
begin
with AFactura.DataTable do
begin
First;
while not EOF do
begin
if AFactura.VERIFACTU = 1 then
begin
bModificado := False;
Next;
end
else
begin
if not AFactura.DataTable.Editing then
AFactura.DataTable.Edit;
AFactura.VERIFACTU := 1;
AFactura.DataTable.Post;
end;
end;
end;
end;
try
AFactura.DataTable.ApplyUpdates;
Result := bModificado;
except
Result := False;
end;
finally
HideHourglassCursor;
end;
end;
function TFacturasClienteController.EsEliminable(AFactura: IBizFacturaCliente; var AComentario: Variant): Boolean;
begin
Result := True;
@ -1164,7 +1232,12 @@ begin
if not Assigned(AFactura) then
raise Exception.Create ('Factura no asignado: EsEliminable');
if (AFactura.SITUACION <> CTE_PENDIENTE) then
if (AFactura.VERIFACTU = 1) then
begin
Result := False;
AComentario := 'La factura se ha mandado a VERIFACTU, por lo que no puede ser eliminada';
end
else if (AFactura.SITUACION <> CTE_PENDIENTE) then
begin
Result := False;
AComentario := 'La factura esta parcial o totalmente pagada, por lo que no puede ser eliminada';
@ -1222,7 +1295,12 @@ begin
end;
end;
if (bFacturaConRecibos and (AFactura.SITUACION <> CTE_PENDIENTE)) then
if (AFactura.VERIFACTU = 1) then
begin
Result := False;
AComentario := 'La factura se ha mandado a VERIFACTU, por lo que no puede ser modificada';
end
else if (bFacturaConRecibos and (AFactura.SITUACION <> CTE_PENDIENTE)) then
begin
Result := False;
AComentario := 'La factura esta parcial o totalmente pagada, por lo que no puede ser modificada';

View File

@ -405,6 +405,10 @@ inherited DataModuleFacturasCliente: TDataModuleFacturasCliente
DataType = datString
Size = 255
ServerAutoRefresh = True
end
item
Name = 'VERIFACTU'
DataType = datSmallInt
end>
Params = <>
StreamingOptions = [soDisableEventsWhileStreaming]

View File

@ -9,10 +9,10 @@ const
{ Data table rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_ListaAnosFacturas = '{B7FF68A1-D930-4C0C-8AAF-8C27E186B9D9}';
RID_TiposFacturaCliente = '{D8A8DDB0-5E73-494E-9AD6-178D73706AD1}';
RID_FacturasCliente = '{43CFE331-CB6C-4098-8463-F95A8F948825}';
RID_FacturasCliente_Detalles = '{073FF65D-E271-4E69-A0E8-08C42BDF02CA}';
RID_ListaAnosFacturas = '{197157A4-BC40-4DFF-B4CB-47178096B4C5}';
RID_TiposFacturaCliente = '{A45B14DA-1262-4976-90AA-94D729007C5F}';
RID_FacturasCliente = '{9DE81AB7-02F8-4155-8B51-57C804D1B326}';
RID_FacturasCliente_Detalles = '{29E7AA5A-40B4-4BC1-AFED-63AFA63B8284}';
{ Data table names }
nme_ListaAnosFacturas = 'ListaAnosFacturas';
@ -97,6 +97,7 @@ const
fld_FacturasClientePAIS = 'PAIS';
fld_FacturasClienteIDIOMA_ISO = 'IDIOMA_ISO';
fld_FacturasClienteIDIOMA = 'IDIOMA';
fld_FacturasClienteVERIFACTU = 'VERIFACTU';
{ FacturasCliente field indexes }
idx_FacturasClienteID = 0;
@ -161,6 +162,7 @@ const
idx_FacturasClientePAIS = 59;
idx_FacturasClienteIDIOMA_ISO = 60;
idx_FacturasClienteIDIOMA = 61;
idx_FacturasClienteVERIFACTU = 62;
{ FacturasCliente_Detalles fields }
fld_FacturasCliente_DetallesID = 'ID';
@ -199,7 +201,7 @@ const
type
{ IListaAnosFacturas }
IListaAnosFacturas = interface(IDAStronglyTypedDataTable)
['{F31F283B-1069-4846-B07F-83CF0B385044}']
['{709B120E-1A8F-4544-B729-2D6C87AD2159}']
{ Property getters and setters }
function GetANOValue: String;
procedure SetANOValue(const aValue: String);
@ -234,7 +236,7 @@ type
{ ITiposFacturaCliente }
ITiposFacturaCliente = interface(IDAStronglyTypedDataTable)
['{DEBFA048-D434-4AF3-ABC9-F19BFA6D3AB4}']
['{19B34701-D74D-4E58-BFFE-83B78E16D86B}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -281,7 +283,7 @@ type
{ IFacturasCliente }
IFacturasCliente = interface(IDAStronglyTypedDataTable)
['{E3D1D0B9-5AB7-4BB5-8AE5-836F2565A317}']
['{21B02625-890F-4CAE-BE87-B4B23E5C754B}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -530,6 +532,10 @@ type
procedure SetIDIOMAValue(const aValue: String);
function GetIDIOMAIsNull: Boolean;
procedure SetIDIOMAIsNull(const aValue: Boolean);
function GetVERIFACTUValue: SmallInt;
procedure SetVERIFACTUValue(const aValue: SmallInt);
function GetVERIFACTUIsNull: Boolean;
procedure SetVERIFACTUIsNull(const aValue: Boolean);
{ Properties }
@ -657,6 +663,8 @@ type
property IDIOMA_ISOIsNull: Boolean read GetIDIOMA_ISOIsNull write SetIDIOMA_ISOIsNull;
property IDIOMA: String read GetIDIOMAValue write SetIDIOMAValue;
property IDIOMAIsNull: Boolean read GetIDIOMAIsNull write SetIDIOMAIsNull;
property VERIFACTU: SmallInt read GetVERIFACTUValue write SetVERIFACTUValue;
property VERIFACTUIsNull: Boolean read GetVERIFACTUIsNull write SetVERIFACTUIsNull;
end;
{ TFacturasClienteDataTableRules }
@ -913,6 +921,10 @@ type
procedure SetIDIOMAValue(const aValue: String); virtual;
function GetIDIOMAIsNull: Boolean; virtual;
procedure SetIDIOMAIsNull(const aValue: Boolean); virtual;
function GetVERIFACTUValue: SmallInt; virtual;
procedure SetVERIFACTUValue(const aValue: SmallInt); virtual;
function GetVERIFACTUIsNull: Boolean; virtual;
procedure SetVERIFACTUIsNull(const aValue: Boolean); virtual;
{ Properties }
property ID: Integer read GetIDValue write SetIDValue;
@ -1039,6 +1051,8 @@ type
property IDIOMA_ISOIsNull: Boolean read GetIDIOMA_ISOIsNull write SetIDIOMA_ISOIsNull;
property IDIOMA: String read GetIDIOMAValue write SetIDIOMAValue;
property IDIOMAIsNull: Boolean read GetIDIOMAIsNull write SetIDIOMAIsNull;
property VERIFACTU: SmallInt read GetVERIFACTUValue write SetVERIFACTUValue;
property VERIFACTUIsNull: Boolean read GetVERIFACTUIsNull write SetVERIFACTUIsNull;
public
constructor Create(aDataTable: TDADataTable); override;
@ -1048,7 +1062,7 @@ type
{ IFacturasCliente_Detalles }
IFacturasCliente_Detalles = interface(IDAStronglyTypedDataTable)
['{DA9FC0DE-8685-4B22-BC13-C1BF1CEAC514}']
['{296955B7-55C9-4B33-9A07-776B48A5E2C8}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -2660,6 +2674,27 @@ begin
DataTable.Fields[idx_FacturasClienteIDIOMA].AsVariant := Null;
end;
function TFacturasClienteDataTableRules.GetVERIFACTUValue: SmallInt;
begin
result := DataTable.Fields[idx_FacturasClienteVERIFACTU].AsSmallInt;
end;
procedure TFacturasClienteDataTableRules.SetVERIFACTUValue(const aValue: SmallInt);
begin
DataTable.Fields[idx_FacturasClienteVERIFACTU].AsSmallInt := aValue;
end;
function TFacturasClienteDataTableRules.GetVERIFACTUIsNull: boolean;
begin
result := DataTable.Fields[idx_FacturasClienteVERIFACTU].IsNull;
end;
procedure TFacturasClienteDataTableRules.SetVERIFACTUIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_FacturasClienteVERIFACTU].AsVariant := Null;
end;
{ TFacturasCliente_DetallesDataTableRules }
constructor TFacturasCliente_DetallesDataTableRules.Create(aDataTable: TDADataTable);

View File

@ -9,15 +9,15 @@ const
{ Delta rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_ListaAnosFacturasDelta = '{41FBDF96-F2A3-4384-9355-5996ACC2B7DF}';
RID_TiposFacturaClienteDelta = '{180A1FF3-63C4-4904-A528-4B468E1E3BFD}';
RID_FacturasClienteDelta = '{BF7EA9B8-37DD-4700-9174-0202FA54944E}';
RID_FacturasCliente_DetallesDelta = '{27F637B6-FCFD-45C1-ACE6-7D7E91E81553}';
RID_ListaAnosFacturasDelta = '{7C14FE66-5716-425B-8FD8-EDEBE86D7EB0}';
RID_TiposFacturaClienteDelta = '{073E81AB-3392-406E-9B63-9B38DD6F0020}';
RID_FacturasClienteDelta = '{F84ED3B2-DB28-413C-B95A-AAEA0D0E3618}';
RID_FacturasCliente_DetallesDelta = '{DA40D106-E83D-49AE-8F15-DFE1EC0EBF6F}';
type
{ IListaAnosFacturasDelta }
IListaAnosFacturasDelta = interface(IListaAnosFacturas)
['{41FBDF96-F2A3-4384-9355-5996ACC2B7DF}']
['{7C14FE66-5716-425B-8FD8-EDEBE86D7EB0}']
{ Property getters and setters }
function GetOldANOValue : String;
@ -51,7 +51,7 @@ type
{ ITiposFacturaClienteDelta }
ITiposFacturaClienteDelta = interface(ITiposFacturaCliente)
['{180A1FF3-63C4-4904-A528-4B468E1E3BFD}']
['{073E81AB-3392-406E-9B63-9B38DD6F0020}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldDESCRIPCIONValue : String;
@ -97,7 +97,7 @@ type
{ IFacturasClienteDelta }
IFacturasClienteDelta = interface(IFacturasCliente)
['{BF7EA9B8-37DD-4700-9174-0202FA54944E}']
['{F84ED3B2-DB28-413C-B95A-AAEA0D0E3618}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
@ -161,6 +161,7 @@ type
function GetOldPAISValue : String;
function GetOldIDIOMA_ISOValue : String;
function GetOldIDIOMAValue : String;
function GetOldVERIFACTUValue : SmallInt;
{ Properties }
property OldID : Integer read GetOldIDValue;
@ -225,6 +226,7 @@ type
property OldPAIS : String read GetOldPAISValue;
property OldIDIOMA_ISO : String read GetOldIDIOMA_ISOValue;
property OldIDIOMA : String read GetOldIDIOMAValue;
property OldVERIFACTU : SmallInt read GetOldVERIFACTUValue;
end;
{ TFacturasClienteBusinessProcessorRules }
@ -605,6 +607,12 @@ type
function GetOldIDIOMAIsNull: Boolean; virtual;
procedure SetIDIOMAValue(const aValue: String); virtual;
procedure SetIDIOMAIsNull(const aValue: Boolean); virtual;
function GetVERIFACTUValue: SmallInt; virtual;
function GetVERIFACTUIsNull: Boolean; virtual;
function GetOldVERIFACTUValue: SmallInt; virtual;
function GetOldVERIFACTUIsNull: Boolean; virtual;
procedure SetVERIFACTUValue(const aValue: SmallInt); virtual;
procedure SetVERIFACTUIsNull(const aValue: Boolean); virtual;
{ Properties }
property ID : Integer read GetIDValue write SetIDValue;
@ -855,6 +863,10 @@ type
property IDIOMAIsNull : Boolean read GetIDIOMAIsNull write SetIDIOMAIsNull;
property OldIDIOMA : String read GetOldIDIOMAValue;
property OldIDIOMAIsNull : Boolean read GetOldIDIOMAIsNull;
property VERIFACTU : SmallInt read GetVERIFACTUValue write SetVERIFACTUValue;
property VERIFACTUIsNull : Boolean read GetVERIFACTUIsNull write SetVERIFACTUIsNull;
property OldVERIFACTU : SmallInt read GetOldVERIFACTUValue;
property OldVERIFACTUIsNull : Boolean read GetOldVERIFACTUIsNull;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -864,7 +876,7 @@ type
{ IFacturasCliente_DetallesDelta }
IFacturasCliente_DetallesDelta = interface(IFacturasCliente_Detalles)
['{27F637B6-FCFD-45C1-ACE6-7D7E91E81553}']
['{DA40D106-E83D-49AE-8F15-DFE1EC0EBF6F}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_FACTURAValue : Integer;
@ -3127,6 +3139,37 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasClienteIDIOMA] := Null;
end;
function TFacturasClienteBusinessProcessorRules.GetVERIFACTUValue: SmallInt;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasClienteVERIFACTU];
end;
function TFacturasClienteBusinessProcessorRules.GetVERIFACTUIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasClienteVERIFACTU]);
end;
function TFacturasClienteBusinessProcessorRules.GetOldVERIFACTUValue: SmallInt;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_FacturasClienteVERIFACTU];
end;
function TFacturasClienteBusinessProcessorRules.GetOldVERIFACTUIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FacturasClienteVERIFACTU]);
end;
procedure TFacturasClienteBusinessProcessorRules.SetVERIFACTUValue(const aValue: SmallInt);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasClienteVERIFACTU] := aValue;
end;
procedure TFacturasClienteBusinessProcessorRules.SetVERIFACTUIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasClienteVERIFACTU] := Null;
end;
{ TFacturasCliente_DetallesBusinessProcessorRules }
constructor TFacturasCliente_DetallesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);

View File

@ -281,6 +281,7 @@ begin
SITUACION := CTE_PENDIENTE;
ID_CLIENTE := ID_NULO;
SIN_COMISION := 0;
VERIFACTU := 0;
ID_FORMA_PAGO := AppFactuGES.EmpresaActiva.ID_FORMA_PAGO;
ID_TIPO_IVA := AppFactuGES.EmpresaActiva.ID_TIPO_IVA;

View File

@ -330,6 +330,10 @@ object srvFacturasCliente: TsrvFacturasCliente
item
DatasetField = 'IDIOMA'
TableField = 'IDIOMA'
end
item
DatasetField = 'VERIFACTU'
TableField = 'VERIFACTU'
end>
end>
Name = 'FacturasCliente'
@ -666,6 +670,10 @@ object srvFacturasCliente: TsrvFacturasCliente
DataType = datString
Size = 255
ServerAutoRefresh = True
end
item
Name = 'VERIFACTU'
DataType = datSmallInt
end>
end
item
@ -1591,6 +1599,11 @@ object srvFacturasCliente: TsrvFacturasCliente
Size = 2
Value = ''
end
item
Name = 'VERIFACTU'
DataType = datSmallInt
Value = ''
end
item
Name = 'OLD_ID'
Value = ''
@ -1622,7 +1635,7 @@ object srvFacturasCliente: TsrvFacturasCliente
'ID_AGENTE = :ID_AGENTE,'#10' NOMBRE_AGENTE = :NOMBRE_AGENTE,'#10' ' +
'DELEGACION = :DELEGACION,'#10' FAC_PROV_GRADEN = :FAC_PROV_GRADEN' +
','#10' TIPO = :TIPO,'#10' PAIS = :PAIS,'#10' IDIOMA_ISO = :IDIOMA_I' +
'SO'#10' WHERE'#10' (ID = :OLD_ID);'#10
'SO,'#10' VERIFACTU = :VERIFACTU'#10' WHERE'#10' (ID = :OLD_ID);'#10
StatementType = stSQL
ColumnMappings = <>
end>

View File

@ -315,6 +315,10 @@ inherited fEditorFacturaCliente: TfEditorFacturaCliente
object pagContenido: TTabSheet
Caption = 'Contenido'
ImageIndex = 1
ExplicitLeft = 0
ExplicitTop = 0
ExplicitWidth = 0
ExplicitHeight = 0
inline frViewDetallesFacturaCliente1: TfrViewDetallesFacturaCliente
Left = 0
Top = 0
@ -335,97 +339,56 @@ inherited fEditorFacturaCliente: TfEditorFacturaCliente
ExplicitHeight = 281
inherited ToolBar1: TToolBar
Width = 846
Height = 24
ExplicitWidth = 846
ExplicitHeight = 24
inherited ToolButton4: TToolButton
Wrap = False
end
inherited ToolButton14: TToolButton
Left = 334
Top = 0
ExplicitLeft = 334
ExplicitTop = 0
end
inherited FontName: TJvFontComboBox
Left = 368
Top = 0
ExplicitLeft = 368
ExplicitTop = 0
end
inherited FontSize: TEdit
Left = 513
Top = 0
Width = 57
ExplicitLeft = 513
ExplicitTop = 0
ExplicitWidth = 57
end
inherited UpDown1: TUpDown
Left = 570
Top = 0
ExplicitLeft = 570
ExplicitTop = 0
Left = 236
ExplicitLeft = 236
end
inherited ToolButton13: TToolButton
Left = 587
Top = 0
ExplicitLeft = 587
ExplicitTop = 0
Left = 253
ExplicitLeft = 253
end
inherited ToolButton6: TToolButton
Left = 595
Top = 0
ExplicitLeft = 595
ExplicitTop = 0
Left = 261
ExplicitLeft = 261
end
inherited ToolButton7: TToolButton
Left = 629
Top = 0
ExplicitLeft = 629
ExplicitTop = 0
Left = 295
ExplicitLeft = 295
end
inherited ToolButton8: TToolButton
Left = 663
Top = 0
ExplicitLeft = 663
ExplicitTop = 0
Left = 329
ExplicitLeft = 329
end
inherited ToolButton12: TToolButton
Left = 697
Top = 0
ExplicitLeft = 697
ExplicitTop = 0
Left = 363
ExplicitLeft = 363
end
inherited ToolButton9: TToolButton
Left = 705
Top = 0
ExplicitLeft = 705
ExplicitTop = 0
Left = 371
ExplicitLeft = 371
end
inherited ToolButton10: TToolButton
Left = 739
Top = 0
ExplicitLeft = 739
ExplicitTop = 0
Left = 405
ExplicitLeft = 405
end
inherited ToolButton11: TToolButton
Left = 773
Top = 0
ExplicitLeft = 773
ExplicitTop = 0
Left = 439
ExplicitLeft = 439
end
end
inherited cxGrid: TcxGrid
Top = 50
Width = 846
Height = 231
Height = 209
ExplicitTop = 50
ExplicitWidth = 846
ExplicitHeight = 231
end
inherited TBXDock1: TTBXDock
Top = 24
Width = 846
ExplicitTop = 24
ExplicitWidth = 846
@ -500,10 +463,6 @@ inherited fEditorFacturaCliente: TfEditorFacturaCliente
Width = 860
TabOrder = 5
ExplicitWidth = 860
inherited lbComentario: TLabel
Width = 850
Height = 25
end
end
inline frViewTotales1: TfrViewTotales [5]
Left = 0

View File

@ -179,8 +179,9 @@ begin
raise Exception.Create('No hay ninguna factura asignada');
//El usuario GERENCIA)
if (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_GERENCIA)
or (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR) then
if (AppFactuGES.UsuarioActivo.ID_PERFIL = CTE_PERFIL_ADMINISTRADOR)
or ((AppFactuGES.UsuarioActivo.ID_PERFIL >= CTE_PERFIL_GERENCIA_INI)
and (AppFactuGES.UsuarioActivo.ID_PERFIL <= CTE_PERFIL_GERENCIA_FIN)) then
begin
lblDesbloquear.Visible := True;

View File

@ -2,7 +2,7 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
Caption = 'Lista de facturas de cliente'
ClientHeight = 666
ClientWidth = 919
ExplicitWidth = 927
ExplicitWidth = 935
ExplicitHeight = 704
PixelsPerInch = 96
TextHeight = 13
@ -38,7 +38,7 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
Width = 919
ExplicitWidth = 919
inherited tbxMain: TTBXToolbar
ExplicitWidth = 810
ExplicitWidth = 780
object TBXSubmenuItem2: TTBXSubmenuItem [0]
Caption = 'Nuevo'
DisplayMode = nbdmImageAndText
@ -65,7 +65,7 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
end
end
inherited tbxFiltro: TTBXToolbar
ExplicitWidth = 379
ExplicitWidth = 362
inherited lblAno: TTBXLabelItem
Visible = True
end
@ -80,11 +80,11 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
ExplicitWidth = 919
end
inherited TBXTMain2: TTBXToolbar
Left = 379
Left = 362
DockPos = 385
Visible = True
ExplicitLeft = 379
ExplicitWidth = 540
ExplicitLeft = 362
ExplicitWidth = 557
object TBXItem41: TTBXItem
Action = actAsignarTipoOperacion
DisplayMode = nbdmImageAndText
@ -107,6 +107,12 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
Action = actInformes
DisplayMode = nbdmImageAndText
end
object TBSeparatorItem2: TTBSeparatorItem
end
object TBXItem46: TTBXItem
Action = actMandarVerifactu
DisplayMode = nbdmImageAndText
end
end
end
inherited StatusBar: TJvStatusBar
@ -117,9 +123,9 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
end
inline frViewFacturasCliente1: TfrViewFacturasCliente [3]
Left = 0
Top = 106
Top = 105
Width = 919
Height = 541
Height = 542
Align = alClient
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@ -129,14 +135,14 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
ParentFont = False
TabOrder = 3
ReadOnly = False
ExplicitTop = 106
ExplicitTop = 105
ExplicitWidth = 919
ExplicitHeight = 541
ExplicitHeight = 542
inherited cxGrid: TcxGrid
Width = 919
Height = 413
Height = 414
ExplicitWidth = 919
ExplicitHeight = 413
ExplicitHeight = 414
inherited cxGridView: TcxGridDBTableView
DataController.Summary.DefaultGroupSummaryItems = <
item
@ -261,8 +267,8 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
end
end
inherited pnlAgrupaciones: TTBXDockablePanel
Top = 515
ExplicitTop = 515
Top = 516
ExplicitTop = 516
ExplicitWidth = 919
inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 919
@ -351,6 +357,12 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
OnExecute = actGenerarPDFExecute
OnUpdate = actGenerarPDFUpdate
end
object actMandarVerifactu: TAction
Caption = 'Mandar Verifactu'
ImageIndex = 16
OnExecute = actMandarVerifactuExecute
OnUpdate = actMandarVerifactuUpdate
end
end
inherited SmallImages: TPngImageList [5]
PngImages = <
@ -3532,39 +3544,40 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
000000180806000000E0773DF8000000017352474200AECE1CE9000000046741
4D410000B18F0BFC6105000000206348524D00007A26000080840000FA000000
80E8000075300000EA6000003A98000017709CBA513C00000009704859730000
0AE900000AE901FD75CED3000003F049444154484BBD557B6C53651C3D7DAD7B
B0ADADC0363ADDA0834D2DDA6E5904A24C17E64864BAF8484C348E104940FD47
128D31121213134DD4C4F8644F794C6413188E81A003B3A15B8AC87C4CA39D9A
685013515B36D8B3F7E7F9AEDCDAB9760F62BCC94D9ADEEF3BE7FCCE777EBFCF
2422F8DF9ED781A56D0EFB730D56945D0EA9BE3F2F676F3D70DF36C01C15FF0A
30AF333BB9E9E74ADF68E4A12A19A8F0851BADB869B6242F00292DD9AE6DBD2B
BD43273D4E79371D5A1DB05527B807B0BCE7C0FEC1EB20A3373A447B60B5688F
544BF0567FA8113393D45970F3C9E265FD7D371448E77C93746442DB6945B322
D5099ACCD8F8DBD5D0467C90E1EB21178A6D3276979F247748B0A2385C6FC5EA
789550A1EBD02247DD57AB964DF4E4A7C9072E487B06B426139E55A2D51E9DE0
656051201B030A7C885584BC9073D740C2E55789B6799D0C54964CB1EB0D6065
4F81EBC76FFDD9F2E17CE8E0B465BCC18C4763C544CF603B5074C68D5FFFBC16
C26AE49742C84F4B21677D193252532EC1B5A521E34C76D9CD0FF67B175CFCCC
931A056F4BC3700370FFBF2B9D94D02660455F2E060DF01F3C90E062C8371E8B
FC5EE593606569B8353D69F7803F2B12C8B546C10F109CA9B92D9E8D535A6087
05EBFADC1835C0BFCE837C7125E44C2EC94A72E4F4E264F928CB2427AE80BCEF
841C9C8771567F6FA2B4C5EDB15D366CF8D48D8928B81B722A07D29305E95E80
28383D8FD0F387A78B72C2266E4EC29304D5782E71C10F5D4ACB4C7D92904075
E1DE64040254FE319577C5283F9209A1EF5A1DE34802D39C2BA0A7B6B7D3936A
BFBC65B966801FA7E7C7E8F96182D31AD99F06D9930CAD16786A4E04044F6D77
BB0E9CDB52239F143A75E5F1C05B52206FD9216F5A75922DB33A6482671E5B92
73E2E2E335F25DA57F0A382DFB638F1DE70DF09D3648A305B2DD840936DEA669
634ACFAD47721D1D639BAA24B47EAD742D344D52DE9A82610A287B0D286C34A3
7B87F56FF05A1384E0C2293AC66F35091BAD25DDF6F460758936B1A1424E79D2
A593AD7FD401E9C880EC4B458436AC3736B770CE10F431FE7741811BEF25128E
A17F1E3D4554527E7655FEB8DCE993EF4BDD93C0555AEA4D783E5EF954EC2568
2F5F2D8668E455A0CA58AF139C2E5AD82FD5CBE5FC9A0239CE716B2867970A3B
BB4BA52AD121D2DA24126D25C9704C2543DCB3263A4DBBF39DAD91DBBD12C84B
9904DE6CC7A0BAA1666A26F59D80C524E88BA924AC26AE5E418305777F5EE414
5E3AC20E95362A6752D48DB47936E0C69A97003B053DA3CE82E0115A55A613A8
32391A7ADBD9400AFC9D5426C48CA3AA9BE74260ACA5652BF8BE18B548FDE0F5
E662F40E2BE5CC77880B965C0EF8B4F7818A1F6D7982F1DBF85F801B15FC059E
6028BEE22B69170000000049454E44AE426082}
0AE900000AE901FD75CED30000040449444154484BB5957B6C53551CC7BF7DAD
7BD0AD2D8F6D74BA413736B060BB65911165BA304702D3C54762A271844002EA
3F90608C9190989868A226C6277B0A38918DC7700CE431301BBAA5080C6510EC
D444C32301B465833D7B7FFECEEDE96537ED3209F19B9CA4F79EDFEFF33DE7D7
DF391744F4BF0E9D3E07F25AEDD6F7EACD2895AFEE496A7E76E6AE3AE0C52D80
5133F80498D69191D878A5C23B127EA592FACBBDA106331E8BCC4EAD0F80A4E6
0CE7969E12CFE049B783BEB541A90536AB06CF03A6EFECD83BB00834F2A89D94
979792F25A15059EF4051B30B549AD098F9F2C9CD7D7FB482E75CC30507B1A94
ED66340953D5A0D188B5D7E74319F682861E06DD2EB4D0E8B33E36799A02E585
A13A33964A964EBC42E781D9F6DA0B4BE68D77E7A4D03127A82D154AA301EF8A
458B18D5E06360B63F03FD023EC8BB087A4037168042650F92B27E25F55714C5
94EB0BA0A43BD7F9E7AFBE0CFA7E0654389765ACDE880D324495F61F6C050ACE
BA70ED9F8740BC1BBA9A0FFA2B0F74D99B4AC3D56514585E1C8C9AECB01AD7F4
7966DE39E74ED6E0AD2918AA075E526113A4190835028B7BB3301085FFE10605
E6802EB94D74B3D24B818AE2508B2DE1AB7E5F7AD89F65D6E0FB18CE5DB34262
74D219086D336165AF0B2351F8C56CD02F0F80CE66F17351269D9E93483FA41B
E8C474D0510768FF348CF1EE5F90E9318A3110DA61C1EA332E8C6B7017E85426
A83B1DD435131A9C6B1EE69ABF2AD3E22AAE81505302DE64A83219FC80EC1619
3EA9263510A7705722FC7E86FFC8F0CE09F043696ADD95DA88812192115F710D
B8A6966F6C0935E79F58A844E1C7197E84E10719CEA5A1BD29A09D89506A80B7
645A5CC518303CB9CDE5DC77636335FD94EF9814DE9C04FADA0AFAD2AC9A6C94
E931D219303CEDC8DCCC13775EAFA6DF2A7C31702ED9DF3BADB815856FB7801A
4CA0AD068CF3C15B27313A69065C73F3A12C7BFBE8BA4A0AAE5A4E9DB30C3A78
4B12867801A59F01F90D46746D3347E0350610C3896FD1519EAB8ED0EE4A3368
B659DE1EA82A52C65797D329B78D3AF8001DB683DA53417B9211E632AC8A4472
2CDF330CDDC4EF6E0B78744813BE86EE4A35E095945D5E923346CF78E9F76297
0E2EBAA5CE80F765BC4E0CF330B4878732C168F853A05286440C4E17CCEAA3AA
85746B592E1DE7EB360AE7534A7CB23B4557C9F818716913D868339B0C4DD8C9
20E72C13F3AA41578EA325FC9487FCD9493A789315031C9CA792A610030B19DE
1B35E111E251A21AD49BF0DCCF050EE28F8E38A1D4CA70EE14F1455A2FF3FF93
3E02ACBCA077788C323CCCA52A550DC436F96AE869E31E17F0DDC9DC21461C16
A759E6DE93B8648B797C287EAB0642FC797372EB1D142BE7FE0E72C0DCC8CCFD
49331012EDC7657983DB6FAD7C75DF2222FC0B51266D78E692E7220000000049
454E44AE426082}
Instruction.Text = 'Las siguientes facturas no han podido ser eliminadas:'
Instruction.Glyph.Data = {
0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001C00

View File

@ -50,6 +50,9 @@ type
JsListaFacturasNoAsignadas: TJSDialog;
actGenerarPDF: TAction;
TBXItem45: TTBXItem;
actMandarVerifactu: TAction;
TBXItem46: TTBXItem;
TBSeparatorItem2: TTBSeparatorItem;
procedure FormShow(Sender: TObject);
procedure actEliminarUpdate(Sender: TObject);
procedure actNuevaFacturaExecute(Sender: TObject);
@ -65,6 +68,8 @@ type
procedure actAsignarContratoUpdate(Sender: TObject);
procedure actGenerarPDFExecute(Sender: TObject);
procedure actGenerarPDFUpdate(Sender: TObject);
procedure actMandarVerifactuExecute(Sender: TObject);
procedure actMandarVerifactuUpdate(Sender: TObject);
private
FFacturas: IBizFacturaCliente;
@ -305,6 +310,83 @@ begin
end;
end;
procedure TfEditorFacturasCliente.actMandarVerifactuExecute(Sender: TObject);
var
AFacturas: IBizFacturaCliente;
AllItems: Boolean;
AListaCausas: TStringList;
begin
AFacturas := Nil;
AllItems := False;
AListaCausas := TStringList.Create;
if MultiSelect and Assigned(ViewGrid) then
AllItems := (ViewGrid.NumSeleccionados > 1);
if AllItems then
begin
if (Application.MessageBox('¿Desea mandar a VERIFACTU los borradores seleccionados, para que se conviertan en FACTURAS DEFINITIVAS EN LA AEAT?, ya no podrá modificarlos', 'Atención', MB_YESNO) = IDYES) then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Facturas as ISeleccionable).SelectedRecords);
AFacturas := (Controller as IFacturasClienteController).ExtraerSeleccionados(Facturas) as IBizFacturaCliente;
end
end
else begin
if (Application.MessageBox('¿Desea mandar a VERIFACTU el borrador seleccionado, para que se convierta en FACTURA DEFINITIVA EN LA AEAT?, ya no podrá modificarlo', 'Atención', MB_YESNO) = IDYES) then
AFacturas := Facturas;
end;
if Assigned(AFacturas) then
begin
FController.enviarVerifactu(AFacturas, AllItems, AListaCausas);
if AllItems then
begin
{ if (AFacturas.DataTable.RecordCount > 0) then
begin
with AFacturas.DataTable do
begin
JsListaFacturasNoEliminadas.Content.Clear;
First;
while not EOF do
begin
JsListaFacturasNoEliminadas.Content.Add('Ref. factura: ' + AFacturas.REFERENCIA + ' ' + AFacturas.NOMBRE);
if Length(AListaCausas.Values[IntToStr(AFacturas.ID)]) > 0 then
JsListaFacturasNoEliminadas.Content.Add(VarToStr(AListaCausas.Values[IntToStr(AFacturas.ID)]))
else
JsListaFacturasNoEliminadas.Content.Add('La factura puede tener algún recibo devuelto y no puede ser eliminada');
JsListaFacturasNoEliminadas.Content.Add('');
Next;
end;
end;
JsListaFacturasNoEliminadas.Execute;
end;
}
actRefrescar.Execute;
end
end;
AListaCausas.Free;
ViewGrid.GotoFirst;
end;
procedure TfEditorFacturasCliente.actMandarVerifactuUpdate(Sender: TObject);
begin
inherited;
(Sender as TAction).Enabled := False;
{Quitar al activar verifactu
if HayDatos and Assigned(ViewGrid) then
(Sender as TAction).Enabled := ViewGrid.EsSeleccionCeldaDatos
and (ViewGrid.NumSeleccionados > 0)
and (FFacturas.VERIFACTU < 1)
else
(Sender as TAction).Enabled := False;
}
end;
procedure TfEditorFacturasCliente.actNuevaFacturaExecute(Sender: TObject);
begin
actNuevo.Execute;

View File

@ -1,7 +1,19 @@
inherited fEditorFacturasClientePreview: TfEditorFacturasClientePreview
Caption = 'Previsualizar la factura'
ExplicitWidth = 954
ExplicitHeight = 543
ExplicitWidth = 962
ExplicitHeight = 547
PixelsPerInch = 96
TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader
ExplicitTop = 78
end
inherited frxPDFExport1: TfrxPDFExport
ShowDialog = False
ShowProgress = False
EmbeddedFonts = True
HTMLTags = True
Author = 'FactuGES'
Subject = 'FactuGES'
Creator = 'FactuGES'
end
end

View File

@ -120,6 +120,9 @@ begin
edtFechaVencimiento.Properties.OnEditValueChanged := edtFechaVencimientoPropertiesEditValueChanged;
//FILTRO DE EMPRESAS
//Solo se ve campo comercial en abeto
//Se solicita 13/01/26 por EVA que tambien lo tenga GRADEN
{
if (AppFactuGES.EmpresaActiva.ID = CTE_EMPRESA_ABETO) then
begin
dxLayoutControl1Group10.Visible := true;
@ -128,6 +131,7 @@ begin
begin
dxLayoutControl1Group10.Visible := false;
end;
}
end;
procedure TfrViewFacturaCliente.CustomViewDestroy(Sender: TObject);

View File

@ -228,6 +228,19 @@ inherited frViewFacturasCliente: TfrViewFacturasCliente
Caption = 'Idioma'
DataBinding.FieldName = 'IDIOMA'
end
object cxGridViewVERIFACTU: TcxGridDBColumn
DataBinding.FieldName = 'VERIFACTU'
PropertiesClassName = 'TcxImageComboBoxProperties'
Properties.Images = PngImageList
Properties.Items = <
item
ImageIndex = 0
Value = 1
end
item
Value = 0
end>
end
end
inherited cxGridLevel: TcxGridLevel
Caption = 'Todas'
@ -286,6 +299,8 @@ inherited frViewFacturasCliente: TfrViewFacturasCliente
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 541
ExplicitWidth = 250
Width = 250
end
end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel

View File

@ -90,6 +90,7 @@ type
actPais: TAction;
TBXSeparatorItem7: TTBXSeparatorItem;
TBXItem8: TTBXItem;
cxGridViewVERIFACTU: TcxGridDBColumn;
procedure cxGridViewStylesGetContentStyle(Sender: TcxCustomGridTableView;
ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem;
out AStyle: TcxStyle);

View File

@ -1,10 +1,19 @@
inherited fEditorFacturasProveedorPreview: TfEditorFacturasProveedorPreview
Caption = 'Previsualizar la factura'
ExplicitWidth = 962
ExplicitHeight = 547
PixelsPerInch = 96
TextHeight = 13
inherited frxReport1: TfrxReport
Datasets = <>
Variables = <>
Style = <>
inherited JvNavPanelHeader: TJvNavPanelHeader
ExplicitTop = 78
end
inherited frxPDFExport1: TfrxPDFExport
ShowDialog = False
ShowProgress = False
EmbeddedFonts = True
HTMLTags = True
Author = 'FactuGES'
Subject = 'FactuGES'
Creator = 'FactuGES'
end
end

View File

@ -8,7 +8,9 @@ uses
JvFormPlacement, ImgList, PngImageList, StdActns, ActnList, ComCtrls,
TB2ExtItems, TBXExtItems, TBX, TB2Item, TB2Dock, TB2Toolbar, pngimage,
ExtCtrls, JvExControls, JvComponent, JvNavigationPane, uIEditorFacturasProveedorPreview,
JvExComCtrls, JvStatusBar;
JvExComCtrls, JvStatusBar, frxExportText, frxExportRTF, frxExportMail,
frxExportXLS, frxExportImage, frxExportPDF, frxClass, frxDCtrl, frxGradient,
frxChBox, frxCross, frxRich, frxOLE, frxBarcode;
type
TfEditorFacturasProveedorPreview = class(TfEditorPreview, IEditorFacturasProveedorPreview)

View File

@ -43,6 +43,7 @@ inherited frViewEntradaSalidaArticulos: TfrViewEntradaSalidaArticulos
Properties.Alignment.Horz = taRightJustify
Properties.DisplayFormat = ',0.##;-,0.##'
Properties.EditFormat = ',0.##;-,0.##'
Properties.MaxValue = 100000.000000000000000000
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
@ -79,13 +80,25 @@ inherited frViewEntradaSalidaArticulos: TfrViewEntradaSalidaArticulos
Width = 121
end
inherited edtFechaFinFiltro: TcxDateEdit
Left = 344
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 344
ExplicitWidth = 121
Width = 121
end
inherited txtFiltroTodo2: TcxTextEdit
Left = 329
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 329
ExplicitWidth = 250
Width = 250
end
end
end
end

View File

@ -191,14 +191,12 @@ inherited frViewInventario: TfrViewInventario
Width = 121
end
inherited txtFiltroTodo2: TcxTextEdit
Left = 329
Left = 318
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 329
ExplicitWidth = 250
Width = 250
ExplicitLeft = 318
end
end
end

View File

@ -49,57 +49,51 @@
<DelphiCompile Include="PedidosProveedor_view.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="$(SystemRoot)\system32\adortl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\Almacenes_controller.dcp" />
<DCCReference Include="$(SystemRoot)\system32\Almacenes_model.dcp" />
<DCCReference Include="$(SystemRoot)\system32\Articulos_model.dcp" />
<DCCReference Include="$(SystemRoot)\system32\Articulos_view.dcp" />
<DCCReference Include="$(SystemRoot)\system32\Contactos_view.dcp" />
<DCCReference Include="$(SystemRoot)\system32\ContratosCliente_controller.dcp" />
<DCCReference Include="$(SystemRoot)\system32\ContratosCliente_model.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxDataD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxEditorsD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxExportD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxExtEditorsD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxGridD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxLibraryD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\cxPageControlD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\DataAbstract_Core_D11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dbrtl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\designide.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dsnap.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dxCoreD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dxGDIPlusD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dxThemeD11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\GUIBase.dcp" />
<DCCReference Include="$(SystemRoot)\system32\GUISDK_D11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\Jcl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JclVcl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JSDialog100.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvCoreD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvPageCompsD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvStdCtrlsD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\JvSystemD11R.dcp" />
<DCCReference Include="$(SystemRoot)\system32\PedidosProveedor_controller.dcp" />
<DCCReference Include="$(SystemRoot)\system32\PedidosProveedor_model.dcp" />
<DCCReference Include="$(SystemRoot)\system32\PedProv_AlbProv_relation.dcp" />
<DCCReference Include="$(SystemRoot)\system32\PedProv_ConCli_relation.dcp" />
<DCCReference Include="$(SystemRoot)\system32\PedProv_FacProv_relation.dcp" />
<DCCReference Include="$(SystemRoot)\system32\PngComponentsD10.dcp" />
<DCCReference Include="$(SystemRoot)\system32\PNG_D10.dcp" />
<DCCReference Include="$(SystemRoot)\system32\RemObjects_Core_D11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\rtl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\tb2k_d10.dcp" />
<DCCReference Include="$(SystemRoot)\system32\tbx_d10.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vcl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vclactnband.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vcldb.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vcljpg.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vclx.dcp" />
<DCCReference Include="$(SystemRoot)\system32\xmlrtl.dcp" />
<DCCReference Include="uEditorBuscarArticulo.pas">
<Form>fEditorBuscarArticulo</Form>
<DesignClass>TfEditorSituacionPedidoProveedor</DesignClass>
<DCCReference Include="adortl.dcp" />
<DCCReference Include="Almacenes_controller.dcp" />
<DCCReference Include="Almacenes_model.dcp" />
<DCCReference Include="Articulos_model.dcp" />
<DCCReference Include="Articulos_view.dcp" />
<DCCReference Include="Contactos_view.dcp" />
<DCCReference Include="ContratosCliente_controller.dcp" />
<DCCReference Include="ContratosCliente_model.dcp" />
<DCCReference Include="cxDataD11.dcp" />
<DCCReference Include="cxEditorsD11.dcp" />
<DCCReference Include="cxExportD11.dcp" />
<DCCReference Include="cxExtEditorsD11.dcp" />
<DCCReference Include="cxGridD11.dcp" />
<DCCReference Include="cxLibraryD11.dcp" />
<DCCReference Include="cxPageControlD11.dcp" />
<DCCReference Include="DataAbstract_Core_D11.dcp" />
<DCCReference Include="dbrtl.dcp" />
<DCCReference Include="designide.dcp" />
<DCCReference Include="dsnap.dcp" />
<DCCReference Include="dxCoreD11.dcp" />
<DCCReference Include="dxGDIPlusD11.dcp" />
<DCCReference Include="dxThemeD11.dcp" />
<DCCReference Include="GUIBase.dcp" />
<DCCReference Include="GUISDK_D11R.dcp" />
<DCCReference Include="Jcl.dcp" />
<DCCReference Include="JclVcl.dcp" />
<DCCReference Include="JSDialog100.dcp" />
<DCCReference Include="JvCoreD11R.dcp" />
<DCCReference Include="JvPageCompsD11R.dcp" />
<DCCReference Include="JvStdCtrlsD11R.dcp" />
<DCCReference Include="JvSystemD11R.dcp" />
<DCCReference Include="PedidosProveedor_controller.dcp" />
<DCCReference Include="PedidosProveedor_model.dcp" />
<DCCReference Include="PedProv_AlbProv_relation.dcp" />
<DCCReference Include="PedProv_ConCli_relation.dcp" />
<DCCReference Include="PedProv_FacProv_relation.dcp" />
<DCCReference Include="PngComponentsD10.dcp" />
<DCCReference Include="PNG_D10.dcp" />
<DCCReference Include="RemObjects_Core_D11.dcp" />
<DCCReference Include="rtl.dcp" />
<DCCReference Include="tb2k_d10.dcp" />
<DCCReference Include="tbx_d10.dcp" />
<DCCReference Include="uEditorBuscarArticuloPedido.pas">
<Form>fEditorBuscarArticuloPedido</Form>
<DesignClass>fEditorBuscarArticuloPedido</DesignClass>
</DCCReference>
<DCCReference Include="uEditorDireccionEntregaPedidoProveedor.pas">
<Form>fEditorDireccionEntregaPedidoProveedor </Form>
@ -158,6 +152,12 @@
<Form>frViewPedidosProveedor</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="vcl.dcp" />
<DCCReference Include="vclactnband.dcp" />
<DCCReference Include="vcldb.dcp" />
<DCCReference Include="vcljpg.dcp" />
<DCCReference Include="vclx.dcp" />
<DCCReference Include="xmlrtl.dcp" />
</ItemGroup>
</Project>
<!-- EurekaLog First Line

View File

@ -1,17 +1,40 @@
inherited fEditorElegirArticulosPedidoProveedor: TfEditorElegirArticulosPedidoProveedor
Caption = 'fEditorElegirArticulosPedidoProveedor'
ExplicitWidth = 320
ExplicitHeight = 482
ExplicitHeight = 705
PixelsPerInch = 96
TextHeight = 13
inherited TBXDock: TTBXDock
Height = 78
ExplicitHeight = 78
inherited tbxMain: TTBXToolbar
ExplicitWidth = 310
ExplicitWidth = 106
ExplicitHeight = 27
end
inherited tbxFiltro: TTBXToolbar
Left = 106
Top = 25
ExplicitLeft = 106
ExplicitTop = 25
end
inherited TBXTMain2: TTBXToolbar
Top = 52
ExplicitTop = 52
end
end
inherited pnlHeader: TPanel
inherited lblTitle: TLabel
Width = 606
end
inherited lblComments: TLabel
Width = 581
Height = 27
end
end
inherited EditorActionList: TActionList
inherited actModificar: TAction
Enabled = True
Visible = True
OnUpdate = actModificarUpdate
end
inherited actRefrescar: TAction
Visible = True

View File

@ -3,18 +3,18 @@ inherited fEditorPedidosProveedor: TfEditorPedidosProveedor
Top = 346
Caption = 'Lista de pedidos a proveedor'
ClientHeight = 686
ClientWidth = 1012
ClientWidth = 1241
Position = poDesigned
ExplicitWidth = 1028
ExplicitWidth = 1257
ExplicitHeight = 724
PixelsPerInch = 96
TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader
Width = 1012
Width = 1241
Caption = 'Lista de pedidos a proveedor'
ExplicitWidth = 1012
ExplicitWidth = 1241
inherited Image1: TImage
Left = 985
Left = 1214
Picture.Data = {
0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001800
0000180806000000E0773DF80000000970485973000017120000171201679FD2
@ -43,8 +43,8 @@ inherited fEditorPedidosProveedor: TfEditorPedidosProveedor
end
end
inherited TBXDock: TTBXDock
Width = 1012
ExplicitWidth = 1012
Width = 1241
ExplicitWidth = 1241
inherited tbxMain: TTBXToolbar
ExplicitWidth = 805
object TBXItem38: TTBXItem [12]
@ -69,14 +69,14 @@ inherited fEditorPedidosProveedor: TfEditorPedidosProveedor
end
end
inherited tbxMenu: TTBXToolbar
ExplicitWidth = 1012
ExplicitWidth = 1241
end
inherited TBXTMain2: TTBXToolbar
Left = 487
DockPos = 285
Visible = True
ExplicitLeft = 487
ExplicitWidth = 525
ExplicitWidth = 613
object TBXItem39: TTBXItem
Action = actRecibirPedido
DisplayMode = nbdmImageAndText
@ -109,14 +109,14 @@ inherited fEditorPedidosProveedor: TfEditorPedidosProveedor
end
inherited StatusBar: TJvStatusBar
Top = 667
Width = 1012
Width = 1241
ExplicitTop = 667
ExplicitWidth = 1012
ExplicitWidth = 1241
end
inline frViewPedidosProveedor1: TfrViewPedidosProveedor [3]
Left = 0
Top = 105
Width = 1012
Width = 1241
Height = 562
Align = alClient
Font.Charset = DEFAULT_CHARSET
@ -128,12 +128,12 @@ inherited fEditorPedidosProveedor: TfEditorPedidosProveedor
TabOrder = 3
ReadOnly = False
ExplicitTop = 105
ExplicitWidth = 1012
ExplicitWidth = 1241
ExplicitHeight = 562
inherited cxGrid: TcxGrid
Width = 1012
Width = 1241
Height = 434
ExplicitWidth = 1012
ExplicitWidth = 1241
ExplicitHeight = 434
inherited cxGridView: TcxGridDBTableView
DataController.Summary.DefaultGroupSummaryItems = <
@ -160,13 +160,13 @@ inherited fEditorPedidosProveedor: TfEditorPedidosProveedor
end
end
inherited frViewFiltroBase1: TfrViewFiltroBase
Width = 1012
ExplicitWidth = 1012
Width = 1241
ExplicitWidth = 1241
inherited TBXDockablePanel1: TTBXDockablePanel
ExplicitWidth = 1012
ExplicitWidth = 1241
inherited dxLayoutControl1: TdxLayoutControl
Width = 1012
ExplicitWidth = 1012
Width = 1241
ExplicitWidth = 1241
inherited txtFiltroTodo: TcxTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
@ -184,28 +184,32 @@ inherited fEditorPedidosProveedor: TfEditorPedidosProveedor
Width = 240
end
inherited edtFechaFinFiltro: TcxDateEdit
Left = 498
Left = 646
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 498
ExplicitLeft = 646
ExplicitWidth = 294
Width = 294
end
inherited txtFiltroTodo2: TcxTextEdit
Left = 637
Left = 667
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 637
ExplicitLeft = 667
ExplicitWidth = 468
Width = 468
end
end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 1012
ExplicitWidth = 1012
Width = 1241
ExplicitWidth = 1241
inherited tbxBotones: TTBXToolbar
Width = 1002
ExplicitWidth = 1002
Width = 1231
ExplicitWidth = 1231
end
end
end
@ -216,13 +220,13 @@ inherited fEditorPedidosProveedor: TfEditorPedidosProveedor
inherited pnlAgrupaciones: TTBXDockablePanel
Top = 536
ExplicitTop = 536
ExplicitWidth = 1012
ExplicitWidth = 1241
inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 1012
ExplicitWidth = 1012
Width = 1241
ExplicitWidth = 1241
inherited TBXToolbar1: TTBXToolbar
Width = 1002
ExplicitWidth = 1002
Width = 1231
ExplicitWidth = 1231
end
end
end

View File

@ -91,7 +91,7 @@ uses
uBizContratosCliente, uContratosClienteController,
// uAlbaranesProveedorController, uBizAlbaranesProveedor,
uGenerarPedidosProvUtils, uBizDetallesPedidoProveedor,
uEditorElegirSituacionPedido, uEditorBuscarArticulo,
uEditorElegirSituacionPedido, uEditorBuscarArticuloPedido,
uGenerarAlbaranesProvUtils, uGenerarFacturasProvPedProvUtils;
{$R *.dfm}
@ -140,14 +140,14 @@ end;
procedure TfEditorPedidosProveedor.actBuscarArticuloExecute(Sender: TObject);
var
AEditor : TfEditorBuscarArticulo;
AEditor : TfEditorBuscarArticuloPedido;
AArticuloABuscar : String;
begin
inherited;
AArticuloABuscar := '';
AEditor := TfEditorBuscarArticulo.Create(NIL);
AEditor := TfEditorBuscarArticuloPedido.Create(NIL);
if Assigned(AEditor) then
try
if (AEditor.ShowModal = mrOk) then

View File

@ -1,6 +1,19 @@
inherited fEditorPedidosProveedorPreview: TfEditorPedidosProveedorPreview
Caption = 'Previsualizar el pedidos proveedor'
ExplicitWidth = 962
ExplicitHeight = 547
PixelsPerInch = 96
TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader
ExplicitTop = 78
end
inherited frxPDFExport1: TfrxPDFExport
ShowDialog = False
ShowProgress = False
EmbeddedFonts = True
HTMLTags = True
Author = 'FactuGES'
Subject = 'FactuGES'
Creator = 'FactuGES'
end
end

View File

@ -2,7 +2,7 @@ inherited fEditorPresupuestosCliente: TfEditorPresupuestosCliente
Caption = 'Lista de presupuestos de cliente'
ClientHeight = 503
ClientWidth = 913
ExplicitWidth = 921
ExplicitWidth = 929
ExplicitHeight = 541
PixelsPerInch = 96
TextHeight = 13
@ -126,7 +126,7 @@ inherited fEditorPresupuestosCliente: TfEditorPresupuestosCliente
Width = 913
ExplicitWidth = 913
inherited tbxMain: TTBXToolbar
ExplicitWidth = 711
ExplicitWidth = 688
object TBXSubmenuItem3: TTBXSubmenuItem [0]
Caption = 'Nuevo'
DisplayMode = nbdmImageAndText
@ -164,7 +164,7 @@ inherited fEditorPresupuestosCliente: TfEditorPresupuestosCliente
end
end
inherited tbxFiltro: TTBXToolbar
ExplicitWidth = 379
ExplicitWidth = 362
inherited lblAno: TTBXLabelItem
Visible = True
end
@ -197,11 +197,11 @@ inherited fEditorPresupuestosCliente: TfEditorPresupuestosCliente
end
end
inherited TBXTMain2: TTBXToolbar
Left = 379
Left = 362
DockPos = 343
Visible = True
ExplicitLeft = 379
ExplicitWidth = 278
ExplicitLeft = 362
ExplicitWidth = 265
object TBXItem43: TTBXItem
Action = actAceptar
DisplayMode = nbdmImageAndText

View File

@ -93,6 +93,7 @@ type
procedure RefrescarInterno; override;
procedure CambiarSituacion(const ASituacion : String);
function GenerarContrato(const APresupuestos : IBizPresupuestoCliente; const AllItems : Boolean = True) : Boolean; overload;
//Si queremos crear otra vista para el editor heredado solo tendriamos que
//sobreescribir este metodo
@ -213,33 +214,10 @@ begin
if MultiSelect and Assigned(ViewGrid) then
AllItems := (ViewGrid.NumSeleccionados > 1);
if AllItems then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Presupuestos as ISeleccionable).SelectedRecords);
APresupuestos := (Controller as IPresupuestosClienteController).ExtraerSeleccionados(Presupuestos) as IBizPresupuestoCliente;
end
else
APresupuestos := Self.Presupuestos;
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Presupuestos as ISeleccionable).SelectedRecords);
APresupuestos := (Controller as IPresupuestosClienteController).ExtraerSeleccionados(Presupuestos) as IBizPresupuestoCliente;
// if (Application.MessageBox('¿Está seguro que desea generar el/los contrato/s de los presupuesto/s seleccionado/s?', 'Atención', MB_YESNO) = IDYES) then
// begin
if not AllItems then
GenerarContratoCli(APresupuestos.ID)
else
with APresupuestos.DataTable do
begin
First;
while not EOF do
begin
GenerarContratoCli(APresupuestos.ID, False);
Next;
end;
end;
actRefrescar.Execute;
if AllItems then
ShowInfoMessage('Se han generado los contratos');
// end
GenerarContrato(APresupuestos, AllItems);
end;
procedure TfEditorPresupuestosCliente.actGenerarContratoUpdate(Sender: TObject);
@ -317,8 +295,7 @@ begin
FController.Ver(Presupuestos);
end;
procedure TfEditorPresupuestosCliente.CambiarSituacion(
const ASituacion: String);
procedure TfEditorPresupuestosCliente.CambiarSituacion(const ASituacion: String);
var
APresupuestos: IBizPresupuestoCliente;
AllItems: Boolean;
@ -336,15 +313,8 @@ begin
if MultiSelect and Assigned(ViewGrid) then
AllItems := (ViewGrid.NumSeleccionados > 1);
if AllItems then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Presupuestos as ISeleccionable).SelectedRecords);
APresupuestos := (Controller as IPresupuestosClienteController).ExtraerSeleccionados(Presupuestos) as IBizPresupuestoCliente;
end
else begin
APresupuestos := Presupuestos;
end;
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Presupuestos as ISeleccionable).SelectedRecords);
APresupuestos := (Controller as IPresupuestosClienteController).ExtraerSeleccionados(Presupuestos) as IBizPresupuestoCliente;
if Assigned(APresupuestos) then
begin
ViewGrid._Grid.BeginUpdate;
@ -369,7 +339,7 @@ begin
end;
if (ShowConfirmMessage(ATitulo, AMensaje) = IDYES) then
actGenerarContrato.Execute;
GenerarContrato(APresupuestos, AllItems);
end;
end;
@ -485,6 +455,29 @@ begin
ViewGrid.GotoFirst;
end;
function TfEditorPresupuestosCliente.GenerarContrato(const APresupuestos: IBizPresupuestoCliente; const AllItems: Boolean): Boolean;
begin
if Assigned(APresupuestos) then
begin
if not AllItems then
GenerarContratoCli(APresupuestos.ID)
else
with APresupuestos.DataTable do
begin
First;
while not EOF do
begin
GenerarContratoCli(APresupuestos.ID, False);
Next;
end;
end;
actRefrescar.Execute;
if AllItems then
ShowInfoMessage('Se han generado todos los contratos');
end;
end;
function TfEditorPresupuestosCliente.GetController: IPresupuestosClienteController;
begin
Result := FController;

View File

@ -1,17 +1,18 @@
inherited fEditorPresupuestosClientePreview: TfEditorPresupuestosClientePreview
Caption = 'Previsualizar el pedidos proveedor'
ExplicitWidth = 320
ExplicitHeight = 240
ExplicitWidth = 962
ExplicitHeight = 547
PixelsPerInch = 96
TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader
ExplicitTop = 78
inherited Image1: TImage
ExplicitLeft = 768
end
end
inherited TBXDock: TTBXDock
inherited TBXToolbar1: TTBXToolbar
ExplicitWidth = 540
ExplicitWidth = 560
object TBXItem58: TTBXItem [1]
Action = actExportarRTF
DisplayMode = nbdmTextOnlyInMenus
@ -19,4 +20,13 @@ inherited fEditorPresupuestosClientePreview: TfEditorPresupuestosClientePreview
end
end
end
inherited frxPDFExport1: TfrxPDFExport
ShowDialog = False
ShowProgress = False
EmbeddedFonts = True
HTMLTags = True
Author = 'FactuGES'
Subject = 'FactuGES'
Creator = 'FactuGES'
end
end

View File

@ -228,8 +228,12 @@ inherited frViewPresupuestoCliente: TfrViewPresupuestoCliente
inherited dxLayoutControl1: TdxLayoutControl
Width = 437
Height = 250
ExplicitWidth = 320
ExplicitHeight = 224
ExplicitWidth = 437
ExplicitHeight = 250
inherited edtlNombre: TcxDBTextEdit
ExplicitWidth = 224
Width = 224
end
inherited edtNIFCIF: TcxDBTextEdit
Left = 324
ExplicitLeft = 324
@ -238,6 +242,10 @@ inherited frViewPresupuestoCliente: TfrViewPresupuestoCliente
Left = 235
ExplicitLeft = 235
end
inherited edtPersonaContacto: TcxDBTextEdit
ExplicitWidth = 283
Width = 283
end
inherited edtDireccion: TcxMemo
ExplicitWidth = 121
Width = 121
@ -250,6 +258,14 @@ inherited frViewPresupuestoCliente: TfrViewPresupuestoCliente
Left = 404
ExplicitLeft = 404
end
inherited edtTelefonos: TcxTextEdit
ExplicitWidth = 363
Width = 363
end
inherited edtIdioma: TcxDBTextEdit
ExplicitWidth = 343
Width = 343
end
end
end
object memFormaPago: TcxDBMemo
@ -413,9 +429,13 @@ inherited frViewPresupuestoCliente: TfrViewPresupuestoCliente
135)
inherited edtlNombreAgente: TcxDBTextEdit
DataBinding.DataSource = DADataSource
ExplicitWidth = 224
Width = 224
end
inherited edtDelegacion: TcxDBTextEdit
DataBinding.DataSource = DADataSource
ExplicitWidth = 562
Width = 562
end
inherited Button3: TBitBtn
Left = 182

View File

@ -161,14 +161,18 @@ begin
frViewTienda1.Visible := false;
frViewTienda1.dxLayoutControl1.Visible :=false;
dxLayoutControl1Group5.Visible := true;
//Solo se ve campo comercial en abeto
//Se solicita 13/01/26 por EVA que tambien lo tenga GRADEN
// dxLayoutControl1Group5.Visible := true;
end
else
begin
frViewTienda1.Visible := true;
frViewTienda1.dxLayoutControl1.Visible :=true;
dxLayoutControl1Group5.Visible := false;
//Solo se ve campo comercial en abeto
//Se solicita 13/01/26 por EVA que tambien lo tenga GRADEN
// dxLayoutControl1Group5.Visible := false;
end;
end;

View File

@ -1,6 +1,19 @@
inherited fEditorRemesaClientePreview: TfEditorRemesaClientePreview
Caption = 'Previsualizar la remesa'
ExplicitWidth = 962
ExplicitHeight = 547
PixelsPerInch = 96
TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader
ExplicitTop = 78
end
inherited frxPDFExport1: TfrxPDFExport
ShowDialog = False
ShowProgress = False
EmbeddedFonts = True
HTMLTags = True
Author = 'FactuGES'
Subject = 'FactuGES'
Creator = 'FactuGES'
end
end

View File

@ -1,5 +1,19 @@
inherited fEditorRemesaProveedorPreview: TfEditorRemesaProveedorPreview
Caption = 'Previsualizar la remesa'
ExplicitWidth = 962
ExplicitHeight = 547
PixelsPerInch = 96
TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader
ExplicitTop = 78
end
inherited frxPDFExport1: TfrxPDFExport
ShowDialog = False
ShowProgress = False
EmbeddedFonts = True
HTMLTags = True
Author = 'FactuGES'
Subject = 'FactuGES'
Creator = 'FactuGES'
end
end

View File

@ -139,8 +139,6 @@ uses
schComisionesServer_Intf in '..\Modulos\Comisiones\Model\schComisionesServer_Intf.pas',
schAlbaranesClienteClient_Intf in '..\Modulos\Albaranes de cliente\Model\schAlbaranesClienteClient_Intf.pas',
schAlbaranesClienteServer_Intf in '..\Modulos\Albaranes de cliente\Model\schAlbaranesClienteServer_Intf.pas',
schFacturasClienteClient_Intf in '..\Modulos\Facturas de cliente\Model\schFacturasClienteClient_Intf.pas',
schFacturasClienteServer_Intf in '..\Modulos\Facturas de cliente\Model\schFacturasClienteServer_Intf.pas',
schRecibosClienteClient_Intf in '..\Modulos\Recibos de cliente\Model\schRecibosClienteClient_Intf.pas',
schRecibosClienteServer_Intf in '..\Modulos\Recibos de cliente\Model\schRecibosClienteServer_Intf.pas',
schIdiomasClient_Intf in '..\ApplicationBase\Idiomas\Model\schIdiomasClient_Intf.pas',
@ -158,14 +156,16 @@ uses
schPedidosProveedorServer_Intf in '..\Modulos\Pedidos a proveedor\Model\schPedidosProveedorServer_Intf.pas',
schFacturasProveedorClient_Intf in '..\Modulos\Facturas de proveedor\Model\schFacturasProveedorClient_Intf.pas',
schFacturasProveedorServer_Intf in '..\Modulos\Facturas de proveedor\Model\schFacturasProveedorServer_Intf.pas',
schAlbaranesProveedorClient_Intf in '..\Modulos\Albaranes de proveedor\Model\schAlbaranesProveedorClient_Intf.pas',
schAlbaranesProveedorServer_Intf in '..\Modulos\Albaranes de proveedor\Model\schAlbaranesProveedorServer_Intf.pas',
schContratosClienteClient_Intf in '..\Modulos\Contratos de cliente\Model\schContratosClienteClient_Intf.pas',
schContratosClienteServer_Intf in '..\Modulos\Contratos de cliente\Model\schContratosClienteServer_Intf.pas',
schHistoricoMovimientosClient_Intf in '..\Modulos\Historico de movimientos\Model\schHistoricoMovimientosClient_Intf.pas',
schHistoricoMovimientosServer_Intf in '..\Modulos\Historico de movimientos\Model\schHistoricoMovimientosServer_Intf.pas',
schPresupuestosClienteClient_Intf in '..\Modulos\Presupuestos de cliente\Model\schPresupuestosClienteClient_Intf.pas',
schPresupuestosClienteServer_Intf in '..\Modulos\Presupuestos de cliente\Model\schPresupuestosClienteServer_Intf.pas';
schPresupuestosClienteServer_Intf in '..\Modulos\Presupuestos de cliente\Model\schPresupuestosClienteServer_Intf.pas',
schContratosClienteClient_Intf in '..\Modulos\Contratos de cliente\Model\schContratosClienteClient_Intf.pas',
schContratosClienteServer_Intf in '..\Modulos\Contratos de cliente\Model\schContratosClienteServer_Intf.pas',
schFacturasClienteClient_Intf in '..\Modulos\Facturas de cliente\Model\schFacturasClienteClient_Intf.pas',
schFacturasClienteServer_Intf in '..\Modulos\Facturas de cliente\Model\schFacturasClienteServer_Intf.pas',
schAlbaranesProveedorClient_Intf in '..\Modulos\Albaranes de proveedor\Model\schAlbaranesProveedorClient_Intf.pas',
schAlbaranesProveedorServer_Intf in '..\Modulos\Albaranes de proveedor\Model\schAlbaranesProveedorServer_Intf.pas';
{$R *.res}
{$R ..\Servicios\RODLFile.res}

View File

@ -28,7 +28,7 @@
<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><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">5</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">Rodax Software S.L.</VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">5.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName">FactuGES (Servidor)</VersionInfoKeys><VersionInfoKeys Name="ProductVersion">5.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys><VersionInfoKeys Name="CompileDate">jueves, 28 de agosto de 2025 16:38</VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">5</VersionInfo><VersionInfo Name="MinorVer">5</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">5.5.1.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName">FactuGES (Servidor)</VersionInfoKeys><VersionInfoKeys Name="ProductVersion">5.5.1.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys><VersionInfoKeys Name="CompileDate">miércoles, 21 de enero de 2026 16:29</VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<Excluded_Packages Name="C:\Users\Public\Documents\RAD Studio\5.0\Bpl\cxLibraryD11.bpl">Express Cross Platform Library by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="C:\Users\Public\Documents\RAD Studio\5.0\Bpl\dxPSCoreD11.bpl">ExpressPrinting System by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\DataAbstract_SDACDriver_D11.bpl">RemObjects Data Abstract - CoreLabs SDAC Driver</Excluded_Packages>

Binary file not shown.