Version 4.8.9

This commit is contained in:
Roberto 2025-07-23 12:19:05 +02:00
parent cee5e36166
commit 8ee36fa9a0
210 changed files with 11844 additions and 3224 deletions

View File

@ -14,8 +14,8 @@
<Notes> <Notes>
<![CDATA[]]> <![CDATA[]]>
</Notes> </Notes>
<LastBuildRun>00:00:19</LastBuildRun> <LastBuildRun>00:00:14</LastBuildRun>
<LastBuildStart>17/04/2024 10:26:10</LastBuildStart> <LastBuildStart>28/02/2025 10:14:30</LastBuildStart>
<LastBuildState>True</LastBuildState> <LastBuildState>False</LastBuildState>
</properties> </properties>
</project> </project>

Binary file not shown.

Binary file not shown.

View File

@ -14,8 +14,8 @@
<Notes> <Notes>
<![CDATA[]]> <![CDATA[]]>
</Notes> </Notes>
<LastBuildRun>00:00:00</LastBuildRun> <LastBuildRun>00:03:39</LastBuildRun>
<LastBuildStart>18/12/2023 12:40:28</LastBuildStart> <LastBuildStart>08/05/2025 9:43:42</LastBuildStart>
<LastBuildState>False</LastBuildState> <LastBuildState>True</LastBuildState>
</properties> </properties>
</project> </project>

Binary file not shown.

Binary file not shown.

View File

@ -10,8 +10,8 @@
<Notes> <Notes>
<![CDATA[]]> <![CDATA[]]>
</Notes> </Notes>
<LastBuildRun>00:00:01</LastBuildRun> <LastBuildRun>00:00:00</LastBuildRun>
<LastBuildStart>16/04/2024 18:27:15</LastBuildStart> <LastBuildStart>28/02/2025 10:12:54</LastBuildStart>
<LastBuildState>True</LastBuildState> <LastBuildState>False</LastBuildState>
</properties> </properties>
</project> </project>

Binary file not shown.

View File

@ -138,6 +138,7 @@ contains
schIdiomasServer_Intf in 'Idiomas\Model\schIdiomasServer_Intf.pas', schIdiomasServer_Intf in 'Idiomas\Model\schIdiomasServer_Intf.pas',
uDataModuleIdiomas in 'Idiomas\Data\uDataModuleIdiomas.pas', uDataModuleIdiomas in 'Idiomas\Data\uDataModuleIdiomas.pas',
uIDataModuleIdiomas in 'Idiomas\Model\Data\uIDataModuleIdiomas.pas', uIDataModuleIdiomas in 'Idiomas\Model\Data\uIDataModuleIdiomas.pas',
uIdiomasController in 'Idiomas\Controller\uIdiomasController.pas'; uIdiomasController in 'Idiomas\Controller\uIdiomasController.pas',
uPlugins_Intf in 'uPlugins_Intf.pas';
end. end.

View File

@ -46,21 +46,6 @@
<Borland.ProjectType>Package</Borland.ProjectType> <Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject> <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> <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="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\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dclofficexp100.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages> <Excluded_Packages Name="$(BDS)\bin\dclofficexp100.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
@ -71,6 +56,43 @@
<DelphiCompile Include="ApplicationBase.dpk"> <DelphiCompile Include="ApplicationBase.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </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="Configuracion\Controller\uConfiguracionController.pas" /> <DCCReference Include="Configuracion\Controller\uConfiguracionController.pas" />
<DCCReference Include="Configuracion\Controller\Views\uIViewConfiguracionBase.pas" /> <DCCReference Include="Configuracion\Controller\Views\uIViewConfiguracionBase.pas" />
<DCCReference Include="Configuracion\Views\uEditorConfiguracion.pas"> <DCCReference Include="Configuracion\Views\uEditorConfiguracion.pas">
@ -161,44 +183,7 @@
<Form>frViewTiendas</Form> <Form>frViewTiendas</Form>
<DesignClass>TCustomView</DesignClass> <DesignClass>TCustomView</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="Idiomas\Controller\adortl.dcp" />
<DCCReference Include="Idiomas\Controller\Base.dcp" />
<DCCReference Include="Idiomas\Controller\ccpackD11.dcp" />
<DCCReference Include="Idiomas\Controller\cfpack_d11.dcp" />
<DCCReference Include="Idiomas\Controller\cxDataD11.dcp" />
<DCCReference Include="Idiomas\Controller\cxEditorsD11.dcp" />
<DCCReference Include="Idiomas\Controller\cxExtEditorsD11.dcp" />
<DCCReference Include="Idiomas\Controller\cxLibraryD11.dcp" />
<DCCReference Include="Idiomas\Controller\DataAbstract_Core_D11.dcp" />
<DCCReference Include="Idiomas\Controller\dbrtl.dcp" />
<DCCReference Include="Idiomas\Controller\designide.dcp" />
<DCCReference Include="Idiomas\Controller\dsnap.dcp" />
<DCCReference Include="Idiomas\Controller\dxCoreD11.dcp" />
<DCCReference Include="Idiomas\Controller\dxGDIPlusD11.dcp" />
<DCCReference Include="Idiomas\Controller\dxNavBarD11.dcp" />
<DCCReference Include="Idiomas\Controller\dxThemeD11.dcp" />
<DCCReference Include="Idiomas\Controller\GUIBase.dcp" />
<DCCReference Include="Idiomas\Controller\GUISDK_D11R.dcp" />
<DCCReference Include="Idiomas\Controller\Jcl.dcp" />
<DCCReference Include="Idiomas\Controller\JclVcl.dcp" />
<DCCReference Include="Idiomas\Controller\JvCoreD11R.dcp" />
<DCCReference Include="Idiomas\Controller\JvCtrlsD11R.dcp" />
<DCCReference Include="Idiomas\Controller\JvJansD11R.dcp" />
<DCCReference Include="Idiomas\Controller\JvMMD11R.dcp" />
<DCCReference Include="Idiomas\Controller\JvStdCtrlsD11R.dcp" />
<DCCReference Include="Idiomas\Controller\JvSystemD11R.dcp" />
<DCCReference Include="Idiomas\Controller\PluginSDK_D11R.dcp" />
<DCCReference Include="Idiomas\Controller\PngComponentsD10.dcp" />
<DCCReference Include="Idiomas\Controller\PNG_D10.dcp" />
<DCCReference Include="Idiomas\Controller\RemObjects_Core_D11.dcp" />
<DCCReference Include="Idiomas\Controller\rtl.dcp" />
<DCCReference Include="Idiomas\Controller\uIdiomasController.pas" /> <DCCReference Include="Idiomas\Controller\uIdiomasController.pas" />
<DCCReference Include="Idiomas\Controller\vcl.dcp" />
<DCCReference Include="Idiomas\Controller\vclactnband.dcp" />
<DCCReference Include="Idiomas\Controller\vcldb.dcp" />
<DCCReference Include="Idiomas\Controller\vcljpg.dcp" />
<DCCReference Include="Idiomas\Controller\vclx.dcp" />
<DCCReference Include="Idiomas\Controller\xmlrtl.dcp" />
<DCCReference Include="Idiomas\Data\uDataModuleIdiomas.pas" /> <DCCReference Include="Idiomas\Data\uDataModuleIdiomas.pas" />
<DCCReference Include="Idiomas\Model\Data\uIDataModuleIdiomas.pas" /> <DCCReference Include="Idiomas\Model\Data\uIDataModuleIdiomas.pas" />
<DCCReference Include="Idiomas\Model\schIdiomasClient_Intf.pas" /> <DCCReference Include="Idiomas\Model\schIdiomasClient_Intf.pas" />
@ -207,6 +192,7 @@
<DCCReference Include="ProvinciasPoblaciones\Controller\uProvinciasPoblacionesController.pas" /> <DCCReference Include="ProvinciasPoblaciones\Controller\uProvinciasPoblacionesController.pas" />
<DCCReference Include="ProvinciasPoblaciones\Data\uDataModuleProvinciasPoblaciones.pas" /> <DCCReference Include="ProvinciasPoblaciones\Data\uDataModuleProvinciasPoblaciones.pas" />
<DCCReference Include="uFactuGES_App.pas" /> <DCCReference Include="uFactuGES_App.pas" />
<DCCReference Include="uPlugins_Intf.pas" />
<DCCReference Include="Usuarios\Controller\uUsuariosController.pas" /> <DCCReference Include="Usuarios\Controller\uUsuariosController.pas" />
<DCCReference Include="Usuarios\Controller\View\uIEditorLogin.pas" /> <DCCReference Include="Usuarios\Controller\View\uIEditorLogin.pas" />
<DCCReference Include="Usuarios\Controller\View\uIEditorPerfilesUsuario.pas" /> <DCCReference Include="Usuarios\Controller\View\uIEditorPerfilesUsuario.pas" />

View File

@ -8,8 +8,11 @@ uses
const const
BIZ_CLIENT_IDIOMAS = 'Client.Idiomas'; BIZ_CLIENT_IDIOMAS = 'Client.Idiomas';
IDIOMA_DEFAULT = 'es'; IDIOMA_DEFAULT = 'es';
CTE_ID_IDIOMA_DEFAULT = 2;
PAIS_DEFAULT = 'España'; PAIS_DEFAULT = 'España';
CTE_ID_IDIOMA_DEFAULT = 1;
CTE_ID_IDIOMA_EN = 2;
CTE_ID_IDIOMA_FR = 3;
type type
IBizIdioma = interface(IIdiomas) IBizIdioma = interface(IIdiomas)

View File

@ -9,6 +9,7 @@ uses
const const
BIZ_SERVER_IDIOMA = 'Server.Idioma'; BIZ_SERVER_IDIOMA = 'Server.Idioma';
IDIOMA_EN = 'en'; IDIOMA_EN = 'en';
IDIOMA_FR = 'fr';
implementation implementation
end. end.

View File

@ -5,7 +5,7 @@ interface
uses uses
SysUtils, Classes, Forms, uBizUsuarios, uBizEmpresas, uBizEjercicios, uControllerBase, SysUtils, Classes, Forms, uBizUsuarios, uBizEmpresas, uBizEjercicios, uControllerBase,
uEmpresasController, uUsuariosController, uHostManager, uConfiguracionController, uEmpresasController, uUsuariosController, uHostManager, uConfiguracionController,
uBizEmpresasTiendas; uBizEmpresasTiendas, uModuleController;
const const
CTE_PERFIL_ADMINISTRADOR = 3; CTE_PERFIL_ADMINISTRADOR = 3;
@ -87,6 +87,8 @@ type
procedure Run; procedure Run;
procedure Terminate; procedure Terminate;
function GetModule(AModuleName: String): TModuleController;
procedure Configurar; procedure Configurar;
property AppVersion : String read GetAppVersion; property AppVersion : String read GetAppVersion;
@ -180,6 +182,8 @@ type
procedure Run; procedure Run;
procedure Terminate; procedure Terminate;
function GetModule(AModuleName: String): TModuleController;
procedure Configurar; procedure Configurar;
procedure SeleccionarEmpresa; procedure SeleccionarEmpresa;
@ -435,6 +439,19 @@ begin
Result := FDoLoadModulesEvent; Result := FDoLoadModulesEvent;
end; end;
function TAppFactuGES.GetModule(AModuleName: String): TModuleController;
var
i : integer;
begin
Result := NIL;
for i := 0 to ModuleManager.ModulesCount - 1 do
if ModuleManager.Modules[i].Module.ModuleName = AModuleName then
begin
Result := ModuleManager.Modules[i].Module;
Break;
end;
end;
function TAppFactuGES.GetModuleManager: THostManager; function TAppFactuGES.GetModuleManager: THostManager;
begin begin
Result := FHostManager; Result := FHostManager;

Binary file not shown.

View File

@ -52,18 +52,7 @@
<Borland.Personality>Delphi.Personality</Borland.Personality> <Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>VCLApplication</Borland.ProjectType> <Borland.ProjectType>VCLApplication</Borland.ProjectType>
<BorlandProject> <BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Language><Language Name="RootDir">C:\Archivos de programa\Borland\Delphi7\Bin\</Language></Language><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">4</VersionInfo><VersionInfo Name="MinorVer">7</VersionInfo><VersionInfo Name="Release">8</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">4.7.8.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">4.7.8.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">4</VersionInfo><VersionInfo Name="MinorVer">8</VersionInfo><VersionInfo Name="Release">9</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">4.8.9.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">4.8.9.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 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> </Excluded_Packages><Source><Source Name="MainSource">FactuGES.dpr</Source></Source></Delphi.Personality><ModelSupport>False</ModelSupport></BorlandProject></BorlandProject>
@ -86,7 +75,6 @@
<DCCReference Include="Utiles\uClienteUtils.pas" /> <DCCReference Include="Utiles\uClienteUtils.pas" />
<DCCReference Include="Utiles\uMenuUtils.pas" /> <DCCReference Include="Utiles\uMenuUtils.pas" />
<DCCReference Include="Utiles\uNavPaneUtils.pas" /> <DCCReference Include="Utiles\uNavPaneUtils.pas" />
<None Include="..\FactuGES.inc" />
</ItemGroup> </ItemGroup>
</Project> </Project>
<!-- EurekaLog First Line <!-- EurekaLog First Line

Binary file not shown.

View File

@ -14,7 +14,7 @@ implementation
{$INCLUDE ..\FactuGES.inc} {$INCLUDE ..\FactuGES.inc}
uses uses
uDMBase, uDataModuleConexion, uDataModuleConfiguracion, uDMBase, uDataModuleConexion, uDataModuleConfiguracion, uPlugins_Intf,
uMainMenuController, uNavPaneController, uPantallaPrincipal; uMainMenuController, uNavPaneController, uPantallaPrincipal;
procedure DoAppLoadModules; procedure DoAppLoadModules;
@ -47,7 +47,8 @@ begin
LoadModule('Comisiones_plugin.bpl'); LoadModule('Comisiones_plugin.bpl');
{$IFDEF PEDIDOSPROVEEDOR} {$IFDEF PEDIDOSPROVEEDOR}
LoadModule('PedidosProveedor_plugin.bpl'); // LoadModule('PedidosProveedor_plugin.bpl');
LoadModule(MODULENAME_PEDIDOS_PROVEEDOR);
LoadModule('AlbaranesProveedor_plugin.bpl'); LoadModule('AlbaranesProveedor_plugin.bpl');
{$ENDIF} {$ENDIF}

View File

@ -14,6 +14,14 @@ uses
type type
IEditorBase = interface(ICustomEditor) IEditorBase = interface(ICustomEditor)
['{CB8CDE00-B225-4A1D-9A5C-EC6FBE2C854B}'] ['{CB8CDE00-B225-4A1D-9A5C-EC6FBE2C854B}']
function GetWindowCaption : String;
procedure SetWindowCaption(const AValue : String);
property WindowCaption : String read GetWindowCaption write SetWindowCaption;
function GetHeaderText : String;
procedure SetHeaderText(const AValue : String);
property HeaderText : String read GetHeaderText write SetHeaderText;
function ShowModal : Integer; function ShowModal : Integer;
procedure Show; procedure Show;
end; end;
@ -120,6 +128,8 @@ type
procedure actGuardarCerrarUpdate(Sender: TObject); procedure actGuardarCerrarUpdate(Sender: TObject);
procedure actGuardarUpdate(Sender: TObject); procedure actGuardarUpdate(Sender: TObject);
protected protected
FWindowCaption : String;
FHeaderText : String;
procedure CreateParams(Var params: TCreateParams); override; procedure CreateParams(Var params: TCreateParams); override;
procedure ActualizarEstadoEditor; virtual; procedure ActualizarEstadoEditor; virtual;
function ModifiedQuery : Boolean; function ModifiedQuery : Boolean;
@ -136,11 +146,17 @@ type
procedure DuplicarInterno; virtual; procedure DuplicarInterno; virtual;
procedure PonerTitulos(const ATitulo: String = ''); virtual; procedure PonerTitulos(const ATitulo: String = ''); virtual;
procedure SetReadOnly(Value: Boolean); override; procedure SetReadOnly(Value: Boolean); override;
function GetHeaderText: String; virtual;
function GetWindowCaption: String; virtual;
procedure SetHeaderText(const Value: String); virtual;
procedure SetWindowCaption(const Value: String); virtual;
public public
constructor Create(AOwner: TComponent); override; constructor Create(AOwner: TComponent); override;
function ShowModal : Integer; override; function ShowModal : Integer; override;
procedure Show; procedure Show;
published published
property WindowCaption : String read GetWindowCaption write SetWindowCaption;
property HeaderText : String read GetHeaderText write SetHeaderText;
procedure FormShow(Sender: TObject); procedure FormShow(Sender: TObject);
end; end;
@ -151,7 +167,7 @@ implementation
{$R *.dfm} {$R *.dfm}
uses uses
Menus, uDMBase, cxControls, cxEdit, uDialogUtils; Menus, uDMBase, cxControls, cxEdit, uDialogUtils, uStringsUtils;
{Método que coge el componente editor que tenga el foco y le fuerza a hacer post para que la tabla se entere {Método que coge el componente editor que tenga el foco y le fuerza a hacer post para que la tabla se entere
} }
@ -392,6 +408,16 @@ begin
end; end;
end; end;
function TfEditorBase.GetHeaderText: String;
begin
Result := FHeaderText;
end;
function TfEditorBase.GetWindowCaption: String;
begin
Result := FWindowCaption;
end;
procedure TfEditorBase.GuardarInterno; procedure TfEditorBase.GuardarInterno;
begin begin
PostActivecxEditorChanges; PostActivecxEditorChanges;
@ -435,17 +461,28 @@ begin
end; end;
procedure TfEditorBase.PonerTitulos(const ATitulo: String); procedure TfEditorBase.PonerTitulos(const ATitulo: String);
var
AHeaderText,
AWindowText : String;
begin begin
if EsCadenaVacia(ATitulo) then
begin
AHeaderText := FHeaderText;
AWindowText := FHeaderText;
end
else begin
AHeaderText := ATitulo;
AWindowText := ATitulo;
end;
if ReadOnly then if ReadOnly then
begin begin
JvNavPanelHeader.Caption := ATitulo + ' (NO MODIFICABLE)'; AHeaderText := AHeaderText + ' (NO MODIFICABLE)';
Caption := ATitulo + ' (NO MODIFICABLE)'; AWindowText := AWindowText + ' (NO MODIFICABLE)';
end
else
begin
JvNavPanelHeader.Caption := ATitulo;
Caption := ATitulo;
end; end;
JvNavPanelHeader.Caption := AHeaderText;
Caption := AWindowText;
end; end;
procedure TfEditorBase.PrevisualizarInterno; procedure TfEditorBase.PrevisualizarInterno;
@ -458,6 +495,11 @@ begin
// //
end; end;
procedure TfEditorBase.SetHeaderText(const Value: String);
begin
FHeaderText := Value;
end;
procedure TfEditorBase.SetReadOnly(Value: Boolean); procedure TfEditorBase.SetReadOnly(Value: Boolean);
var var
i: integer; i: integer;
@ -473,6 +515,11 @@ begin
end end
end; end;
procedure TfEditorBase.SetWindowCaption(const Value: String);
begin
FWindowCaption := Value;
end;
procedure TfEditorBase.Show; procedure TfEditorBase.Show;
begin begin
inherited Show; inherited Show;

View File

@ -96,7 +96,6 @@ begin
Self.ReadOnly := False; Self.ReadOnly := False;
ActualizarEstadoEditor; ActualizarEstadoEditor;
end; end;
end; end;
procedure TfEditorDBItem.SetComentario(const Value: Variant); procedure TfEditorDBItem.SetComentario(const Value: Variant);

View File

@ -4,8 +4,8 @@ inherited fEditorItem: TfEditorItem
Caption = 'fEditorItem' Caption = 'fEditorItem'
ClientHeight = 501 ClientHeight = 501
ClientWidth = 678 ClientWidth = 678
ExplicitWidth = 686 ExplicitWidth = 694
ExplicitHeight = 535 ExplicitHeight = 539
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
@ -20,9 +20,9 @@ inherited fEditorItem: TfEditorItem
object pgPaginas: TPageControl [1] object pgPaginas: TPageControl [1]
AlignWithMargins = True AlignWithMargins = True
Left = 3 Left = 3
Top = 79 Top = 81
Width = 672 Width = 672
Height = 400 Height = 398
ActivePage = pagGeneral ActivePage = pagGeneral
Align = alClient Align = alClient
TabOrder = 1 TabOrder = 1
@ -34,7 +34,7 @@ inherited fEditorItem: TfEditorItem
Width = 678 Width = 678
ExplicitWidth = 678 ExplicitWidth = 678
inherited tbxMain: TTBXToolbar inherited tbxMain: TTBXToolbar
ExplicitWidth = 581 ExplicitWidth = 615
inherited TBXItem5: TTBXItem inherited TBXItem5: TTBXItem
Visible = False Visible = False
end 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

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

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

@ -41,73 +41,27 @@
<Borland.Personality>Delphi.Personality</Borland.Personality> <Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType> <Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject> <BorlandProject>
<BorlandProject xmlns=""> <Delphi.Personality> <Parameters> <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>
<Parameters Name="UseLauncher">False</Parameters>
<Parameters Name="LoadAllSymbols">True</Parameters>
<Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
</Parameters>
<Package_Options>
<Package_Options Name="ImplicitBuild">True</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:\Archivos de programa\RemObjects Software\Pascal Script\Dcu\D10\PascalScript_RO_D10.bpl">RemObjects Pascal Script - RemObjects SDK 3.0 Integration</Excluded_Packages> <Excluded_Packages Name="C:\Archivos de programa\RemObjects Software\Pascal Script\Dcu\D10\PascalScript_RO_D10.bpl">RemObjects Pascal Script - RemObjects SDK 3.0 Integration</Excluded_Packages>
<Excluded_Packages Name="C:\Archivos de programa\EurekaLog 5\Delphi10\ExceptionExpert10.bpl">EurekaLog 5.1.9</Excluded_Packages> <Excluded_Packages Name="C:\Archivos de programa\EurekaLog 5\Delphi10\ExceptionExpert10.bpl">EurekaLog 5.1.9</Excluded_Packages>
</Excluded_Packages> </Excluded_Packages><Source><Source Name="MainSource">AlbaranesCliente_plugin.dpk</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
<Source>
<Source Name="MainSource">AlbaranesCliente_plugin.dpk</Source>
</Source>
</Delphi.Personality> </BorlandProject></BorlandProject>
</ProjectExtensions> </ProjectExtensions>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" /> <Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
<ItemGroup> <ItemGroup>
<DelphiCompile Include="AlbaranesCliente_plugin.dpk"> <DelphiCompile Include="AlbaranesCliente_plugin.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\..\Lib\AlbaranesCliente_model.dcp" /> <DCCReference Include="$(SystemRoot)\system32\AlbaranesCliente_model.dcp" />
<DCCReference Include="..\..\Lib\AlbaranesCliente_view.dcp" /> <DCCReference Include="$(SystemRoot)\system32\AlbaranesCliente_view.dcp" />
<DCCReference Include="uPluginAlbaranesCliente.pas"> <DCCReference Include="uPluginAlbaranesCliente.pas">
<Form>PluginAlbaranesCliente</Form> <Form>PluginAlbaranesCliente</Form>
</DCCReference> </DCCReference>
</ItemGroup> </ItemGroup>
</Project> </Project>
<!-- EurekaLog First Line <!-- EurekaLog First Line
[Exception Log] [Exception Log]
EurekaLog Version=6006 EurekaLog Version=6006

View File

@ -283,15 +283,20 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
DataType = datString DataType = datString
Size = 10 Size = 10
end end
item
Name = 'CONCEPTO'
DataType = datString
Size = 2000
end
item item
Name = 'CONCEPTO_EN' Name = 'CONCEPTO_EN'
DataType = datString DataType = datString
Size = 1000 Size = 1000
end end
item item
Name = 'CONCEPTO' Name = 'CONCEPTO_FR'
DataType = datString DataType = datString
Size = 2000 Size = 1000
end end
item item
Name = 'CANTIDAD' Name = 'CANTIDAD'
@ -879,18 +884,21 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
'.ID_ALBARAN,'#10' ALBARANES_CLIENTE_DETALLES.POSICION, ALBARAN' + '.ID_ALBARAN,'#10' ALBARANES_CLIENTE_DETALLES.POSICION, ALBARAN' +
'ES_CLIENTE_DETALLES.TIPO_DETALLE,'#10'/*'#10' ALBARANES_CLIENTE_DE' + 'ES_CLIENTE_DETALLES.TIPO_DETALLE,'#10'/*'#10' ALBARANES_CLIENTE_DE' +
'TALLES.CONCEPTO as CONCEPTO_RTF,'#10' F_RTFTOTEXT(ALBARANES_CL' + 'TALLES.CONCEPTO as CONCEPTO_RTF,'#10' F_RTFTOTEXT(ALBARANES_CL' +
'IENTE_DETALLES.CONCEPTO) as CONCEPTO,'#10'*/'#10' ARTICULOS_IDIOMA' + 'IENTE_DETALLES.CONCEPTO) as CONCEPTO,'#10'*/'#10' ALBARANES_CLIENT' +
'S.DESCRIPCION as CONCEPTO_EN,'#10' ALBARANES_CLIENTE_DETALLES.' + 'E_DETALLES.CONCEPTO,'#10' AI_EN.DESCRIPCION as CONCEPTO_EN,'#10' ' +
'CONCEPTO,'#10' ALBARANES_CLIENTE_DETALLES.CANTIDAD,'#10' ALB' + ' AI_FR.DESCRIPCION as CONCEPTO_FR,'#10#10' ALBARANES_CLIENTE' +
'ARANES_CLIENTE_DETALLES.DESCUENTO, ALBARANES_CLIENTE_DETALLES.VI' + '_DETALLES.CANTIDAD,'#10' ALBARANES_CLIENTE_DETALLES.DESCUENTO,' +
'SIBLE,'#10' ALBARANES_CLIENTE_DETALLES.IMPORTE_UNIDAD, ALBARAN' + ' ALBARANES_CLIENTE_DETALLES.VISIBLE,'#10' ALBARANES_CLIENTE_DE' +
'ES_CLIENTE_DETALLES.IMPORTE_TOTAL,'#10' ARTICULOS.REFERENCIA, ' + 'TALLES.IMPORTE_UNIDAD, ALBARANES_CLIENTE_DETALLES.IMPORTE_TOTAL,' +
'ARTICULOS.FAMILIA, ARTICULOS.REFERENCIA_PROV as REFERENCIA_PROVE' + #10' ARTICULOS.REFERENCIA, ARTICULOS.FAMILIA, ARTICULOS.REFER' +
'EDOR'#10#10'FROM ALBARANES_CLIENTE_DETALLES'#10'LEFT JOIN ARTICULOS ON (AL' + 'ENCIA_PROV as REFERENCIA_PROVEEDOR'#10#10'FROM ALBARANES_CLIENTE_DETAL' +
'BARANES_CLIENTE_DETALLES.ID_ARTICULO = ARTICULOS.ID)'#10'LEFT JOIN A' + 'LES'#10'LEFT JOIN ARTICULOS ON (ALBARANES_CLIENTE_DETALLES.ID_ARTICU' +
'RTICULOS_IDIOMAS ON (ALBARANES_CLIENTE_DETALLES.ID_ARTICULO = AR' + 'LO = ARTICULOS.ID)'#10'LEFT JOIN ARTICULOS_IDIOMAS as AI_EN ON ((AI_' +
'TICULOS_IDIOMAS.ID_ARTICULO)'#10'WHERE ID_ALBARAN = :ID_ALBARAN'#10'ORDE' + 'EN.id_articulo = ALBARANES_CLIENTE_DETALLES.ID_ARTICULO) and (AI' +
'R BY POSICION'#10 '_EN.ID_IDIOMA = 2))'#10'LEFT JOIN ARTICULOS_IDIOMAS as AI_FR ON ((AI' +
'_FR.id_articulo = ALBARANES_CLIENTE_DETALLES.ID_ARTICULO) and (A' +
'I_FR.ID_IDIOMA = 3))'#10#10'WHERE ID_ALBARAN = :ID_ALBARAN'#10'ORDER BY PO' +
'SICION'#10
StatementType = stSQL StatementType = stSQL
ColumnMappings = < ColumnMappings = <
item item
@ -949,6 +957,11 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
DatasetField = 'CONCEPTO_EN' DatasetField = 'CONCEPTO_EN'
TableField = '<unknown>' TableField = '<unknown>'
SQLOrigin = 'CONCEPTO_EN' SQLOrigin = 'CONCEPTO_EN'
end
item
DatasetField = 'CONCEPTO_FR'
TableField = '<unknown>'
SQLOrigin = 'CONCEPTO_FR'
end> end>
end> end>
Name = 'Informe_Detalles' Name = 'Informe_Detalles'
@ -970,15 +983,20 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
DataType = datString DataType = datString
Size = 10 Size = 10
end end
item
Name = 'CONCEPTO'
DataType = datString
Size = 2000
end
item item
Name = 'CONCEPTO_EN' Name = 'CONCEPTO_EN'
DataType = datString DataType = datString
Size = 1000 Size = 1000
end end
item item
Name = 'CONCEPTO' Name = 'CONCEPTO_FR'
DataType = datString DataType = datString
Size = 2000 Size = 1000
end end
item item
Name = 'CANTIDAD' Name = 'CANTIDAD'
@ -1495,6 +1513,7 @@ object RptAlbaranesCliente: TRptAlbaranesCliente
UseFileCache = True UseFileCache = True
ShowProgress = False ShowProgress = False
OverwritePrompt = False OverwritePrompt = False
EmbeddedFonts = True
PrintOptimized = True PrintOptimized = True
Outline = False Outline = False
Background = False Background = False

View File

@ -128,6 +128,8 @@ begin
if (tbl_Cabecera.FieldByName('IDIOMA_ISO').AsString = IDIOMA_EN) then if (tbl_Cabecera.FieldByName('IDIOMA_ISO').AsString = IDIOMA_EN) then
AInforme := DarRutaFichero(DarRutaInformes, rptInfAlbaran, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString, tbl_Cabecera.FieldByName('ID_TIENDA').AsString, IDIOMA_EN) AInforme := DarRutaFichero(DarRutaInformes, rptInfAlbaran, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString, tbl_Cabecera.FieldByName('ID_TIENDA').AsString, IDIOMA_EN)
else if (tbl_Cabecera.FieldByName('IDIOMA_ISO').AsString = IDIOMA_FR) then
AInforme := DarRutaFichero(DarRutaInformes, rptInfAlbaran, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString, tbl_Cabecera.FieldByName('ID_TIENDA').AsString, IDIOMA_FR)
else else
AInforme := DarRutaFichero(DarRutaInformes, rptInfAlbaran, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString, tbl_Cabecera.FieldByName('ID_TIENDA').AsString); AInforme := DarRutaFichero(DarRutaInformes, rptInfAlbaran, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString, tbl_Cabecera.FieldByName('ID_TIENDA').AsString);

View File

@ -1,7 +1,7 @@
inherited fEditorAlbaranesCliente: TfEditorAlbaranesCliente inherited fEditorAlbaranesCliente: TfEditorAlbaranesCliente
Caption = 'Lista de albaranes de cliente' Caption = 'Lista de albaranes de cliente'
ClientWidth = 899 ClientWidth = 899
ExplicitWidth = 907 ExplicitWidth = 915
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
@ -124,12 +124,12 @@ inherited fEditorAlbaranesCliente: TfEditorAlbaranesCliente
Width = 899 Width = 899
ExplicitWidth = 899 ExplicitWidth = 899
inherited tbxMain: TTBXToolbar inherited tbxMain: TTBXToolbar
ExplicitWidth = 717 ExplicitWidth = 694
object TBXSeparatorItem17: TTBXSeparatorItem [10] object TBXSeparatorItem17: TTBXSeparatorItem [10]
end end
end end
inherited tbxFiltro: TTBXToolbar inherited tbxFiltro: TTBXToolbar
ExplicitWidth = 379 ExplicitWidth = 362
inherited lblAno: TTBXLabelItem inherited lblAno: TTBXLabelItem
Visible = True Visible = True
end end
@ -148,7 +148,7 @@ inherited fEditorAlbaranesCliente: TfEditorAlbaranesCliente
DockPos = 460 DockPos = 460
Visible = True Visible = True
ExplicitLeft = 460 ExplicitLeft = 460
ExplicitWidth = 322 ExplicitWidth = 299
object TBXItem42: TTBXItem object TBXItem42: TTBXItem
Action = actEnviar Action = actEnviar
DisplayMode = nbdmImageAndText DisplayMode = nbdmImageAndText

View File

@ -1,4 +1,5 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup> <PropertyGroup>
<ProjectGuid>{7ed85635-c723-4c0b-bf1d-f719e0ea33ad}</ProjectGuid> <ProjectGuid>{7ed85635-c723-4c0b-bf1d-f719e0ea33ad}</ProjectGuid>
<MainSource>AlbaranesProveedor_controller.dpk</MainSource> <MainSource>AlbaranesProveedor_controller.dpk</MainSource>
@ -48,18 +49,31 @@
<DelphiCompile Include="AlbaranesProveedor_controller.dpk"> <DelphiCompile Include="AlbaranesProveedor_controller.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\..\Contratos de cliente\Model\AlbaranesProveedor_data.dcp" /> <DCCReference Include="adortl.dcp" />
<DCCReference Include="..\..\Contratos de cliente\Model\AlbaranesProveedor_model.dcp" /> <DCCReference Include="AlbaranesProveedor_data.dcp" />
<DCCReference Include="..\..\Contratos de cliente\Model\Articulos_controller.dcp" /> <DCCReference Include="AlbaranesProveedor_model.dcp" />
<DCCReference Include="..\..\Contratos de cliente\Model\Contactos_controller.dcp" /> <DCCReference Include="Articulos_controller.dcp" />
<DCCReference Include="..\..\Contratos de cliente\Model\GUIBase.dcp" /> <DCCReference Include="Contactos_controller.dcp" />
<DCCReference Include="..\..\Contratos de cliente\Model\Inventario_model.dcp" /> <DCCReference Include="cxLibraryD11.dcp" />
<DCCReference Include="..\..\Contratos de cliente\Model\PedidosProveedor_controller.dcp" /> <DCCReference Include="DataAbstract_Core_D11.dcp" />
<DCCReference Include="..\..\Contratos de cliente\Model\PedidosProveedor_model.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="uAlbaranesProveedorController.pas" /> <DCCReference Include="uAlbaranesProveedorController.pas" />
<DCCReference Include="uAlbaranesProveedorReportController.pas" /> <DCCReference Include="uAlbaranesProveedorReportController.pas" />
<DCCReference Include="uArticulosAlbaranProveedorController.pas" /> <DCCReference Include="uArticulosAlbaranProveedorController.pas" />
<DCCReference Include="uDetallesAlbaranProveedorController.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\uIEditorAlbaranDevProveedor.pas" />
<DCCReference Include="View\uIEditorAlbaranesDevProveedor.pas" /> <DCCReference Include="View\uIEditorAlbaranesDevProveedor.pas" />
<DCCReference Include="View\uIEditorAlbaranesProveedor.pas" /> <DCCReference Include="View\uIEditorAlbaranesProveedor.pas" />

View File

@ -7,8 +7,7 @@ uses
SysUtils, uDADataTable, uEditorDBItem, Classes, SysUtils, uDADataTable, uEditorDBItem, Classes,
uControllerBase, uIDataModuleAlbaranesProveedor, uProveedoresController, uControllerBase, uIDataModuleAlbaranesProveedor, uProveedoresController,
uDetallesAlbaranProveedorController, uBizAlbaranesProveedor, uDetallesAlbaranProveedorController, uBizAlbaranesProveedor,
uBizDireccionesContacto, uBizInventario, uBizDireccionesContacto, uBizInventario, uBizPedidosProveedor;
uBizPedidosProveedor;
type type
IAlbaranesProveedorController = interface(IControllerBase) IAlbaranesProveedorController = interface(IControllerBase)
@ -33,8 +32,8 @@ type
function Nuevo (WithInsert: Boolean = True): IBizAlbaranProveedor; function Nuevo (WithInsert: Boolean = True): IBizAlbaranProveedor;
function Anadir(AAlbaran : IBizAlbaranProveedor) : Boolean; overload; function Anadir(AAlbaran : IBizAlbaranProveedor) : Boolean; overload;
function AnadirAlbaranDev(AAlbaran : IBizAlbaranProveedor) : Boolean; function AnadirAlbaranDev(AAlbaran : IBizAlbaranProveedor) : Boolean;
function Anadir(AAlbaran : IBizAlbaranProveedor; const IDPedido : Integer; AInventarioRecibido: IBizInventario): Boolean; overload; // function Anadir(AAlbaran : IBizAlbaranProveedor; const IDPedido : Integer; AInventarioRecibido: IBizInventario): Boolean; overload;
function Anadir(AAlbaranes : IBizAlbaranProveedor; AListaPedidos : IBizPedidoProveedor): Boolean; overload; // function Anadir(AAlbaranes : IBizAlbaranProveedor; AListaPedidos : IBizPedidoProveedor): Boolean; overload;
function Eliminar(const ID : Integer): Boolean; overload; function Eliminar(const ID : Integer): Boolean; overload;
function Eliminar(AAlbaran : IBizAlbaranProveedor; AllItems: Boolean = false): Boolean; overload; function Eliminar(AAlbaran : IBizAlbaranProveedor; AllItems: Boolean = false): Boolean; overload;
@ -60,6 +59,8 @@ type
function DarListaAnosAlbaranes: TStringList; function DarListaAnosAlbaranes: TStringList;
procedure FiltrarAno(AAlbaran: IBizAlbaranProveedor; ADynWhereDataTable: WideString; const Ano: String); procedure FiltrarAno(AAlbaran: IBizAlbaranProveedor; ADynWhereDataTable: WideString; const Ano: String);
function GenerarDevolucion(AAlbaran : IBizAlbaranProveedor) : IBizAlbaranProveedor;
function AsignarIncidenciaDevolucion(AAlbaran : IBizAlbaranProveedor; const ACausa: String) : IBizAlbaranProveedor;
end; end;
TAlbaranesProveedorController = class(TControllerBase, IAlbaranesProveedorController) TAlbaranesProveedorController = class(TControllerBase, IAlbaranesProveedorController)
@ -99,8 +100,8 @@ type
function Existe(const ID: Integer) : Boolean; virtual; function Existe(const ID: Integer) : Boolean; virtual;
function Anadir(AAlbaran : IBizAlbaranProveedor) : Boolean; overload; function Anadir(AAlbaran : IBizAlbaranProveedor) : Boolean; overload;
function AnadirAlbaranDev(AAlbaran : IBizAlbaranProveedor) : Boolean; function AnadirAlbaranDev(AAlbaran : IBizAlbaranProveedor) : Boolean;
function Anadir(AAlbaran : IBizAlbaranProveedor; const IDPedido : Integer; AInventarioRecibido: IBizInventario): Boolean; overload; // function Anadir(AAlbaran : IBizAlbaranProveedor; const IDPedido : Integer; AInventarioRecibido: IBizInventario): Boolean; overload;
function Anadir(AAlbaranes : IBizAlbaranProveedor; AListaPedidos : IBizPedidoProveedor): Boolean; overload; // function Anadir(AAlbaranes : IBizAlbaranProveedor; AListaPedidos : IBizPedidoProveedor): Boolean; overload;
function Buscar(const ID: Integer): IBizAlbaranProveedor; function Buscar(const ID: Integer): IBizAlbaranProveedor;
function BuscarTodos: IBizAlbaranProveedor; function BuscarTodos: IBizAlbaranProveedor;
@ -129,6 +130,8 @@ type
function DarListaAnosAlbaranes: TStringList; function DarListaAnosAlbaranes: TStringList;
procedure FiltrarAno(AAlbaran: IBizAlbaranProveedor; ADynWhereDataTable: WideString; const Ano: String); procedure FiltrarAno(AAlbaran: IBizAlbaranProveedor; ADynWhereDataTable: WideString; const Ano: String);
function GenerarDevolucion(AAlbaran : IBizAlbaranProveedor) : IBizAlbaranProveedor;
function AsignarIncidenciaDevolucion(AAlbaran : IBizAlbaranProveedor; const ACausa: String) : IBizAlbaranProveedor;
end; end;
implementation implementation
@ -142,229 +145,15 @@ uses
uIEditorElegirAlbaranesProveedor, uIEditorDireccionEntregaAlbaranProveedor, uIEditorElegirAlbaranesProveedor, uIEditorDireccionEntregaAlbaranProveedor,
schContactosClient_Intf, Forms, schPedidosProveedorClient_Intf, uFactuGES_App, schContactosClient_Intf, Forms, schPedidosProveedorClient_Intf, uFactuGES_App,
uPedidosProveedorController, uBizDetallesPedidoProveedor, uPedidosProveedorController, uBizDetallesPedidoProveedor,
uArticulosController, uBizArticulos, uControllerDetallesBase, uControllerDetallesBase, uControllerDetallesArticulos, Variants, uDialogUtils,
schArticulosClient_Intf, uControllerDetallesArticulos, Variants, uDialogUtils, uIEditorAlbaranDevProveedor, uAlbaranesProveedorReportController;
uIEditorAlbaranDevProveedor, uAlbaranesProveedorReportController,
schInventarioClient_Intf;
{ Métodos auxiliares } { Métodos auxiliares }
procedure CopiarPedidoAAlbaran(APedido: IBizPedidoProveedor;
AAlbaran : IBizAlbaranProveedor);
begin
if not Assigned(AAlbaran) then
raise Exception.Create ('Albarán no asignado (CopiarPedidoAAlbaran)');
if not Assigned(APedido) then
raise Exception.Create ('Pedido no asignado (CopiarPedidoAAlbaran)');
if not APedido.DataTable.Active then
APedido.DataTable.Active := True;
// El albarán tiene que venir ya abierto y posicionado donde hay que copiar
AAlbaran.ID_PROVEEDOR := APedido.ID_PROVEEDOR;
AAlbaran.ID_PEDIDO := APedido.ID;
AAlbaran.CALLE := APedido.CALLE;
AAlbaran.CODIGO_POSTAL := APedido.CODIGO_POSTAL;
AAlbaran.POBLACION := APedido.POBLACION;
AAlbaran.PROVINCIA := APedido.PROVINCIA;
AAlbaran.PERSONA_CONTACTO := APedido.PERSONA_CONTACTO;
AAlbaran.TELEFONO := APedido.TELEFONO;
AAlbaran.BASE_IMPONIBLE := APedido.BASE_IMPONIBLE;
AAlbaran.IMPORTE_NETO := APedido.IMPORTE_NETO;
AAlbaran.IMPORTE_PORTE := APedido.IMPORTE_PORTE;
AAlbaran.IMPORTE_DESCUENTO := APedido.IMPORTE_DESCUENTO;
AAlbaran.IMPORTE_IVA := APedido.IMPORTE_IVA;
AAlbaran.IMPORTE_TOTAL := APedido.IMPORTE_TOTAL;
AAlbaran.DESCUENTO := APedido.DESCUENTO;
AAlbaran.IVA := APedido.IVA;
AAlbaran.DataTable.FieldByName(fld_AlbaranesProveedorOBSERVACIONES).AsVariant := APedido.DataTable.FieldByName(fld_PedidosProveedorOBSERVACIONES).AsVariant;
AAlbaran.ID_FORMA_PAGO := APedido.ID_FORMA_PAGO;
AAlbaran.ID_ALMACEN := APedido.ID_ALMACEN;
end;
procedure CopiarArticulosPedido(ID_PEDIDO: Integer; AOrigen: IBizDetallesPedidoProveedor; ADestino : IBizDetallesAlbaranProveedor; AArticulosPendientes: IBizDetallesPedidoProveedorPend);
var
i : integer;
ADetallesController : IDetallesAlbaranProveedorController;
ACantidad: Variant;
ArticulosAnadidosAux: TStringList;
ACadena: String;
begin
if not Assigned(AOrigen) then
raise Exception.Create ('Origen no asignado (CopiarArticulosPedido)');
if not Assigned(ADestino) then
raise Exception.Create ('Destino no asignado (CopiarArticulosPedido)');
if not AOrigen.DataTable.Active then
AOrigen.DataTable.Active := True;
if not ADestino.DataTable.Active then
ADestino.DataTable.Active := True;
ADetallesController := TDetallesAlbaranProveedorController.Create;
ArticulosAnadidosAux:= TStringList.Create;
try
//OJO IMPORTANTE
//Siempre que vayamos a trabajar con los detalles debemos hacer un beginupdate de los mismos y un endupdate para
//obligarle siempre a recalcular los detalles una sola vez
ADetallesController.BeginUpdate(ADestino);
AOrigen.DataTable.First;
for i := 0 to AOrigen.DataTable.RecordCount - 1 do
begin
ACadena := '';
//Comprobamos el articulo del pedido no haya sido recibido ya en otro albaran.
AArticulosPendientes.DataTable.First;
if AArticulosPendientes.DataTable.Locate(fld_PedidosProveedor_DetallesID_ARTICULO, AOrigen.ID_ARTICULO, []) then
begin
//Esto es para el caso de meter edl mismo articulo varias veces en el pedido cambiando la descripción, si esto ocurre,
//Metemos en la primera aparición la suma de las unidades a recibir y en las siguiente apariciones se pone CERO
if (ArticulosAnadidosAux.IndexOf(IntToStr(AOrigen.ID_ARTICULO)) = -1) then
begin
ACantidad := AArticulosPendientes.CANTIDAD;
ArticulosAnadidosAux.Add(IntToStr(AOrigen.ID_ARTICULO));
end
else begin
ACantidad := 0;
ACadena := #10 + #13 + ' - Artículo con ref. ' + AOrigen.REFERENCIA + ' repetido en otra linea y descripción diferente';
end;
end
else
begin
ACantidad := 0; //AOrigen.CANTIDAD;
ACadena := ' - Recibido en un albarán anterior'
end;
ADetallesController.Add(ADestino, TIPO_DETALLE_CONCEPTO);
ADestino.Edit;
ADestino.REFERENCIA := AOrigen.REFERENCIA;
if AOrigen.ID_ARTICULO > 0 then
ADestino.ID_ARTICULO := AOrigen.ID_ARTICULO;
ADestino.CONCEPTO := AOrigen.CONCEPTO + ACadena;
ADestino.CANTIDAD := ACantidad;
ADestino.IMPORTE_UNIDAD := AOrigen.IMPORTE_UNIDAD;
ADestino.IMPORTE_TOTAL := AOrigen.IMPORTE_TOTAL;
ADestino.DESCUENTO := AOrigen.DESCUENTO;
ADestino.IMPORTE_PORTE := AOrigen.IMPORTE_PORTE;
ADestino.VISIBLE := AOrigen.VISIBLE;
ADestino.REFERENCIA_PROVEEDOR := AOrigen.REFERENCIA_PROVEEDOR;
ADestino.ID_PEDIDO := ID_PEDIDO;
ADestino.Post;
AOrigen.Next;
end;
finally
ArticulosAnadidosAux.Destroy;
ADetallesController.EndUpdate(ADestino);
ADetallesController := NIL;
end;
end;
procedure CopiarArticulosAAlbaran(APedido: IBizPedidoProveedor; AAlbaran: IBizAlbaranProveedor;
AInventarioRecibido: IBizInventario);
var
i : integer;
ADetalles : IBizDetallesAlbaranProveedor;
ADetallesController : IDetallesAlbaranProveedorController;
AArticulosController : IArticulosController;
AArticulo : IBizArticulo;
begin
if not Assigned(AAlbaran) then
raise Exception.Create ('Albarán no asignado (CopiarArticulosAAlbaran)');
if not Assigned(APedido) then
raise Exception.Create ('Pedido no asignado (CopiarArticulosAAlbaran)');
//Si esta asignado el inventario recibido es por una entrada de articulos de un pedido a almacén
if Assigned(AInventarioRecibido) then
begin
if not AInventarioRecibido.DataTable.Active then
AInventarioRecibido.DataTable.Active := True;
// El albarán tiene que venir ya abierto y posicionado donde hay que copiar
ADetalles := AAlbaran.Detalles;
ADetallesController := TDetallesAlbaranProveedorController.Create;
AArticulosController := TArticulosController.Create;
try
AInventarioRecibido.DataTable.First;
for i := 0 to AInventarioRecibido.DataTable.RecordCount - 1 do
begin
AArticulo := AArticulosController.Buscar(AInventarioRecibido.ID_ARTICULO);
if not Assigned(AArticulo) then
raise Exception.Create(Format('No se ha encontrado el artículo con ID %d (CopiarArticulosAAlbaran)', [AInventarioRecibido.ID_ARTICULO]));
if (AInventarioRecibido.CANTIDAD <> 0) then
begin
ADetallesController.Add(ADetalles, TIPO_DETALLE_CONCEPTO);
//Se cambia porque puede haber articulos del pedido que no tengan referencia de proveedor
// ADetallesController.AnadirArticulo(ADetalles, AInventarioRecibido.REFERENCIA, tCliente);
ADetallesController.AnadirArticulo(ADetalles, AInventarioRecibido.ID_ARTICULO);
ADetalles.Edit;
APedido.Detalles.First;
//Se cambia porque puede haber articulos del pedido que no tengan referencia de proveedor
// if not APedido.Detalles.DataTable.Locate(fld_ArticulosREFERENCIA, ADetalles.REFERENCIA, []) then
if not APedido.Detalles.Locate(fld_INVENTARIOID_ARTICULO, VarArrayOf([ADetalles.DataTable.FieldByName('ID_ARTICULO').AsVariant]), []) then
raise Exception.Create(Format('No se ha encontrado el artículo del pedido con REFERENCIA %s (CopiarArticulosAAlbaran)', [ADetalles.REFERENCIA]));
ADetalles.IMPORTE_UNIDAD := APedido.Detalles.IMPORTE_UNIDAD;
ADetalles.DESCUENTO := APedido.Detalles.DESCUENTO;
ADetalles.IMPORTE_PORTE := APedido.Detalles.IMPORTE_PORTE;
ADetalles.CANTIDAD := AInventarioRecibido.CANTIDAD;
ADetalles.Post;
end;
AInventarioRecibido.Next;
end;
finally
ADetallesController := NIL;
AArticulosController := NIL;
end;
end
else begin
// AInventarioRecibido = NIL
// El albarán tiene que venir ya abierto y posicionado donde hay que copiar
ADetalles := AAlbaran.Detalles;
ADetallesController := TDetallesAlbaranProveedorController.Create;
AArticulosController := TArticulosController.Create;
try
APedido.Detalles.DataTable.First;
for i := 0 to APedido.Detalles.DataTable.RecordCount - 1 do
begin
AArticulo := AArticulosController.Buscar(APedido.Detalles.ID_ARTICULO);
if not Assigned(AArticulo) then
raise Exception.Create(Format('No se ha encontrado el artículo con ID %d (CopiarArticulosAAlbaran)', [APedido.Detalles.ID_ARTICULO]));
if (APedido.Detalles.CANTIDAD <> 0) then
begin
ADetallesController.Add(ADetalles, TIPO_DETALLE_CONCEPTO);
ADetallesController.AnadirArticulo(ADetalles, APedido.Detalles.REFERENCIA, tCliente);
ADetalles.Edit;
ADetalles.IMPORTE_UNIDAD := APedido.Detalles.IMPORTE_UNIDAD;
ADetalles.DESCUENTO := APedido.Detalles.DESCUENTO;
ADetalles.IMPORTE_PORTE := APedido.Detalles.IMPORTE_PORTE;
ADetalles.CANTIDAD := APedido.Detalles.CANTIDAD;
ADetalles.Post;
end;
APedido.Detalles.Next;
end;
finally
ADetallesController := NIL;
AArticulosController := NIL;
end;
end;
ADetallesController.ActualizarTotales(ADetalles);
end;
{ TAlbaranesProveedorController } { TAlbaranesProveedorController }
@ -381,64 +170,9 @@ begin
end; end;
function TAlbaranesProveedorController.Anadir(AAlbaran: IBizAlbaranProveedor; const IDPedido: Integer; AInventarioRecibido: IBizInventario): Boolean;
var
APedidosController : TPedidosProveedorController;
APedido : IBizPedidoProveedor;
begin
Result := False;
if not Assigned(AAlbaran) then
raise Exception.Create ('Albarán no asignado (Anadir)');
if (IDPedido < 0) or (IDPedido = 0) then
raise Exception.Create (Format('ID de pedido (%d) incorrecto (Anadir)', [IDPedido]));
if not AAlbaran.DataTable.Active then {function TAlbaranesProveedorController.Anadir(AAlbaranes: IBizAlbaranProveedor; AListaPedidos: IBizPedidoProveedor): Boolean;
AAlbaran.DataTable.Active := True;
ShowHourglassCursor;
Application.ProcessMessages;
APedido := NIL;
APedidosController := TPedidosProveedorController.Create;
try
APedido := APedidosController.Buscar(IDPedido);
if not Assigned(APedido) then
raise Exception.Create (Format('No se ha encontrado un pedido de proveedor con ID %d (Anadir)', [IDPedido]));
APedido.DataTable.Active := True;
if not Assigned(AInventarioRecibido) then
begin
if (APedido.ID_ALMACEN > 0) then
raise Exception.Create ('Inventario recibido no asignado (Anadir)')
end
else begin
if not AInventarioRecibido.DataTable.Active then
AInventarioRecibido.DataTable.Active := True;
end;
Self.Anadir(AAlbaran);
CopiarPedidoAAlbaran(APedido, AAlbaran);
CopiarArticulosAAlbaran(APedido, AAlbaran, AInventarioRecibido);
RecalcularImportes(AAlbaran);
Result := True;
finally
APedido := NIL;
APedidosController := NIL;
HideHourglassCursor;
Application.ProcessMessages;
end;
end;
function TAlbaranesProveedorController.Anadir(AAlbaranes: IBizAlbaranProveedor;
AListaPedidos: IBizPedidoProveedor): Boolean;
var
AAlbaranActual : IBizAlbaranProveedor;
APedidosController : IPedidosProveedorController;
AArticulosPendientes : IBizDetallesPedidoProveedorPend;
I: Integer;
bEnEdicion : Boolean;
begin begin
Result := False; Result := False;
@ -450,144 +184,14 @@ begin
if not Assigned(AListaPedidos) then if not Assigned(AListaPedidos) then
raise Exception.Create ('Pedidos no asignados (Anadir)'); raise Exception.Create ('Pedidos no asignados (Anadir)');
if not AAlbaranes.DataTable.Active then
AAlbaranes.DataTable.Active := True;
if not AListaPedidos.DataTable.Active then
AListaPedidos.DataTable.Active := True;
ShowHourglassCursor; ShowHourglassCursor;
Application.ProcessMessages; Application.ProcessMessages;
APedidosController := TPedidosProveedorController.Create;
try try
// Ordenar por fecha de pedido GenerarAlbaranesdeListaPedidos(AAlbaranes, AListaPedidos);
AListaPedidos.DataTable.Sort([fld_PedidosProveedorFECHA_PEDIDO], [uDADataTable.sdAscending]);
AListaPedidos.First;
for I := 0 to AListaPedidos.DataTable.RecordCount - 1 do
begin
AListaPedidos._Proveedor := NIL;
AAlbaranActual := NIL;
// Busco si hay algun albarán ya hecho de ese Proveedor
AAlbaranes.DataTable.First;
if AAlbaranes.DataTable.Locate(fld_AlbaranesProveedorID_Proveedor, AListaPedidos.ID_Proveedor, []) then
begin
AAlbaranActual := AAlbaranes;
RecuperarProveedor(AAlbaranActual);
AAlbaranActual.Proveedor.DataTable.Active := True;
bEnEdicion := (AAlbaranActual.DataTable.State in dsEditModes);
if not bEnEdicion then
AAlbaranActual.Edit;
//Si ya tenemos un albarán quiere decir que dicho albarán va ha recibir mas de un pedido
//por lo que la relación con el pedido se traslada a los articulos detalles, es decir un albarán que recibe varios pedidos
//el idPedido de la cabeceza será null.
AAlbaranActual.ID_PEDIDOIsNull := True;
//Cuando elijo varios pedidos ponemos como almacén destino siempre el que tenga asociado el primer pedido del albaran
// AAlbaranActual.ID_ALMACEN := AL PASADO POR PARAMETRO
AAlbaranActual.Post;
if bEnEdicion then
AAlbaranActual.Edit;
end
else begin
// No hay albaran de ese Proveedor. Creo una nueva
Anadir(AAlbaranes);
APedidosController.RecuperarProveedor(AListaPedidos);
AAlbaranes.Proveedor := AListaPedidos.Proveedor;
//Siempre asignaremos por defecto el ID_PEDIDO del primer pedido de la lista, si hay más pedidos en el albarán luego los pondremos a null,
//con ID_ALMACEN pasará lo mismo
bEnEdicion := (AAlbaranes.DataTable.State in dsEditModes);
if not bEnEdicion then
AAlbaranes.Edit;
AAlbaranes.ID_PEDIDO := AListaPedidos.ID;
AAlbaranes.ID_ALMACEN := AListaPedidos.ID_ALMACEN;
AAlbaranes.Post;
if bEnEdicion then
AAlbaranes.Edit;
//Si el albaran es de tipo devolución hacemos la factura de tipo abono
{ if (AListaAlbaranes.TIPO = CTE_TIPO_ALBARAN_DEV) then
begin
bEnEdicion := (AFacturas.DataTable.State in dsEditModes);
if not bEnEdicion then
AFacturas.Edit;
AFacturas.TIPO := CTE_TIPO_ABONO;
AFacturas.Post;
if bEnEdicion then
AFacturas.Edit;
end;
}
AAlbaranActual := AAlbaranes;
end;
// Ya tengo el albarán. Le añado los conceptos del pedido
//Recogemos los articulos pendientes de recibir de pedido, para solo recibir lo restante si ya estubiera recibido parcialmente.
//SOLO SE TENDRA EN CUENTA LOS INVENTARIABLES
AArticulosPendientes := APedidosController.ArticulosPendientesDeRecibir(AListaPedidos.ID);
AAlbaranActual.Detalles.DataTable.Last;
// Añado el título
Self.DetallesController.Add(AAlbaranActual.Detalles, TIPO_DETALLE_TITULO);
with AAlbaranActual.Detalles do
begin
Edit;
CONCEPTO := 'Pedido ' + AListaPedidos.REFERENCIA + ' del ' + DateToStr(AListaPedidos.FECHA_PEDIDO);
Post;
end;
// Añado el contenido del pedido
CopiarArticulosPedido(AListaPedidos.ID, AListaPedidos.Detalles, AAlbaranActual.Detalles, AArticulosPendientes);
{En los albaranes a proveedor el porte es a nivel del artículo
Self.DetallesController.Add(AFacturaActual.Detalles, TIPO_DETALLE_CONCEPTO);
with AFacturaActual.Detalles do
begin
Edit;
CONCEPTO := 'Porte del albarán';
CANTIDAD := 1;
IMPORTE_UNIDAD := AListaAlbaranes.IMPORTE_PORTE;
Post;
end;
}
// Añado el resumen
Self.DetallesController.Add(AAlbaranActual.Detalles, TIPO_DETALLE_SUBTOTAL);
with AAlbaranActual.Detalles do
begin
Edit;
CONCEPTO := 'Total del pedido ' + AListaPedidos.REFERENCIA;
Post;
end;
// Añado una línea en blanco
Self.DetallesController.Add(AAlbaranActual.Detalles, TIPO_DETALLE_CONCEPTO);
with AAlbaranActual.Detalles do
begin
Edit;
CONCEPTO := '';
Post;
end;
// Guardo el albaran que acabo de generar o editar
AAlbaranActual.CalcularImporteTotal;
Self.Guardar(AAlbaranActual);
// No se asocia el albaran al pedido ya que un pedido puede estar representado por varios albaranes
{ AListaPedidos.Edit;
AListaPedidos.ID_FACTURA := AFacturaActual.ID;
AListaPedidos.Post;
APedidosController.Guardar(AListaPedidos);
}
AListaPedidos.Next;
end;
Result := True;
finally finally
APedidosController := NIL;
HideHourglassCursor HideHourglassCursor
end; end;
end; end; }
function TAlbaranesProveedorController.AnadirAlbaranDev(AAlbaran: IBizAlbaranProveedor): Boolean; function TAlbaranesProveedorController.AnadirAlbaranDev(AAlbaran: IBizAlbaranProveedor): Boolean;
begin begin
@ -600,6 +204,28 @@ begin
FDataModule := TDataModuleAlbaranesProveedor.Create(Nil); FDataModule := TDataModuleAlbaranesProveedor.Create(Nil);
end; end;
function TAlbaranesProveedorController.AsignarIncidenciaDevolucion(AAlbaran: IBizAlbaranProveedor; const ACausa: String): IBizAlbaranProveedor;
var
bEnEdicion : Boolean;
begin
if not Assigned(AAlbaran) then
raise Exception.Create ('Albaran no asignado (AsignarIncidenciaDevolucion)');
if AAlbaran.DataTable.Active then
AAlbaran.DataTable.Active := True;
try
ShowHourglassCursor;
AAlbaran.Edit;
AAlbaran.INCIDENCIAS_ACTIVAS := 1;
AAlbaran.INCIDENCIAS.Add(ACausa);
AAlbaran.Post;
AAlbaran.DataTable.ApplyUpdates;
finally
HideHourglassCursor;
end;
end;
function TAlbaranesProveedorController.Buscar(const ID: Integer): IBizAlbaranProveedor; function TAlbaranesProveedorController.Buscar(const ID: Integer): IBizAlbaranProveedor;
begin begin
Result := FDataModule.GetItem(ID); Result := FDataModule.GetItem(ID);
@ -1364,6 +990,33 @@ begin
Result := FProveedorController; Result := FProveedorController;
end; end;
function TAlbaranesProveedorController.GenerarDevolucion(AAlbaran: IBizAlbaranProveedor): IBizAlbaranProveedor;
begin
if not Assigned(AAlbaran) then
raise Exception.Create ('Albarán no asignado (QuitarDireccionEnvio)');
if AAlbaran.DataTable.Active then
AAlbaran.DataTable.Active := True;
ShowHourglassCursor;
try
Result := Duplicar(AAlbaran);
//Convierte todos los articulos del albaran a negativos por ser una devolucion
FDetallesController.CambiarSignoDetalles(Result.Detalles);
Result.Edit;
Result.TIPO := CTE_TIPO_ALBARAN_DEV;
Result.ID_ALBARAN := AAlbaran.ID;
Result.REF_ALB_PROV := AAlbaran.REFERENCIA;
Result.REF_PED_PROV_PADRE := AAlbaran.REF_PEDIDOS_PROV;
Result.Post;
finally
HideHourglassCursor;
end;
end;
function TAlbaranesProveedorController.GetDetallesController: IDetallesAlbaranProveedorController; function TAlbaranesProveedorController.GetDetallesController: IDetallesAlbaranProveedorController;
begin begin
Result := FDetallesController; Result := FDetallesController;

View File

@ -96,11 +96,9 @@ inherited DataModuleAlbaranesProveedor: TDataModuleAlbaranesProveedor
DictionaryEntry = 'AlbaranesProveedor_ID_PEDIDO' DictionaryEntry = 'AlbaranesProveedor_ID_PEDIDO'
end end
item item
Name = 'REF_PED_PROVEEDOR' Name = 'REF_PEDIDOS_PROV'
DataType = datString DataType = datString
Size = 255 Size = 255
DisplayLabel = 'Ped. proveedor'
DictionaryEntry = 'AlbaranesProveedor_REF_PED_PROVEEDOR'
end end
item item
Name = 'ID_FACTURA' Name = 'ID_FACTURA'
@ -269,6 +267,20 @@ inherited DataModuleAlbaranesProveedor: TDataModuleAlbaranesProveedor
Name = 'TIENDA' Name = 'TIENDA'
DataType = datString DataType = datString
Size = 255 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> end>
Params = <> Params = <>
StreamingOptions = [soDisableEventsWhileStreaming] StreamingOptions = [soDisableEventsWhileStreaming]

View File

@ -9,9 +9,9 @@ const
{ Data table rules ids { Data table rules ids
Feel free to change them to something more human readable Feel free to change them to something more human readable
but make sure they are unique in the context of your application } but make sure they are unique in the context of your application }
RID_ListaAnosAlbaranes = '{28CED4BC-33F4-40F4-83E4-E08848FC1E4E}'; RID_ListaAnosAlbaranes = '{83CAD8CD-C005-4B11-8B72-16388B4E180D}';
RID_AlbaranesProveedor = '{92B5A6D8-07B2-43EB-93AB-DFDF49ADBCBC}'; RID_AlbaranesProveedor = '{8B2592BB-41AA-40AE-9248-872E109007DA}';
RID_AlbaranesProveedor_Detalles = '{C52C3E9A-131F-4B9B-BD01-3C1324709B9A}'; RID_AlbaranesProveedor_Detalles = '{D7D318FA-C58C-46E2-8F50-68DC419E5203}';
{ Data table names } { Data table names }
nme_ListaAnosAlbaranes = 'ListaAnosAlbaranes'; nme_ListaAnosAlbaranes = 'ListaAnosAlbaranes';
@ -36,7 +36,7 @@ const
fld_AlbaranesProveedorID_ALMACEN = 'ID_ALMACEN'; fld_AlbaranesProveedorID_ALMACEN = 'ID_ALMACEN';
fld_AlbaranesProveedorNOMBRE_ALMACEN = 'NOMBRE_ALMACEN'; fld_AlbaranesProveedorNOMBRE_ALMACEN = 'NOMBRE_ALMACEN';
fld_AlbaranesProveedorID_PEDIDO = 'ID_PEDIDO'; fld_AlbaranesProveedorID_PEDIDO = 'ID_PEDIDO';
fld_AlbaranesProveedorREF_PED_PROVEEDOR = 'REF_PED_PROVEEDOR'; fld_AlbaranesProveedorREF_PEDIDOS_PROV = 'REF_PEDIDOS_PROV';
fld_AlbaranesProveedorID_FACTURA = 'ID_FACTURA'; fld_AlbaranesProveedorID_FACTURA = 'ID_FACTURA';
fld_AlbaranesProveedorREF_FACTURA = 'REF_FACTURA'; fld_AlbaranesProveedorREF_FACTURA = 'REF_FACTURA';
fld_AlbaranesProveedorREF_FACTURA_PROV = 'REF_FACTURA_PROV'; fld_AlbaranesProveedorREF_FACTURA_PROV = 'REF_FACTURA_PROV';
@ -64,6 +64,9 @@ const
fld_AlbaranesProveedorID_FORMA_PAGO = 'ID_FORMA_PAGO'; fld_AlbaranesProveedorID_FORMA_PAGO = 'ID_FORMA_PAGO';
fld_AlbaranesProveedorID_TIENDA = 'ID_TIENDA'; fld_AlbaranesProveedorID_TIENDA = 'ID_TIENDA';
fld_AlbaranesProveedorTIENDA = 'TIENDA'; fld_AlbaranesProveedorTIENDA = 'TIENDA';
fld_AlbaranesProveedorID_ALBARAN = 'ID_ALBARAN';
fld_AlbaranesProveedorREF_ALB_PROV = 'REF_ALB_PROV';
fld_AlbaranesProveedorREF_PED_PROV_PADRE = 'REF_PED_PROV_PADRE';
{ AlbaranesProveedor field indexes } { AlbaranesProveedor field indexes }
idx_AlbaranesProveedorID = 0; idx_AlbaranesProveedorID = 0;
@ -77,7 +80,7 @@ const
idx_AlbaranesProveedorID_ALMACEN = 8; idx_AlbaranesProveedorID_ALMACEN = 8;
idx_AlbaranesProveedorNOMBRE_ALMACEN = 9; idx_AlbaranesProveedorNOMBRE_ALMACEN = 9;
idx_AlbaranesProveedorID_PEDIDO = 10; idx_AlbaranesProveedorID_PEDIDO = 10;
idx_AlbaranesProveedorREF_PED_PROVEEDOR = 11; idx_AlbaranesProveedorREF_PEDIDOS_PROV = 11;
idx_AlbaranesProveedorID_FACTURA = 12; idx_AlbaranesProveedorID_FACTURA = 12;
idx_AlbaranesProveedorREF_FACTURA = 13; idx_AlbaranesProveedorREF_FACTURA = 13;
idx_AlbaranesProveedorREF_FACTURA_PROV = 14; idx_AlbaranesProveedorREF_FACTURA_PROV = 14;
@ -105,6 +108,9 @@ const
idx_AlbaranesProveedorID_FORMA_PAGO = 36; idx_AlbaranesProveedorID_FORMA_PAGO = 36;
idx_AlbaranesProveedorID_TIENDA = 37; idx_AlbaranesProveedorID_TIENDA = 37;
idx_AlbaranesProveedorTIENDA = 38; idx_AlbaranesProveedorTIENDA = 38;
idx_AlbaranesProveedorID_ALBARAN = 39;
idx_AlbaranesProveedorREF_ALB_PROV = 40;
idx_AlbaranesProveedorREF_PED_PROV_PADRE = 41;
{ AlbaranesProveedor_Detalles fields } { AlbaranesProveedor_Detalles fields }
fld_AlbaranesProveedor_DetallesID = 'ID'; fld_AlbaranesProveedor_DetallesID = 'ID';
@ -145,7 +151,7 @@ const
type type
{ IListaAnosAlbaranes } { IListaAnosAlbaranes }
IListaAnosAlbaranes = interface(IDAStronglyTypedDataTable) IListaAnosAlbaranes = interface(IDAStronglyTypedDataTable)
['{33C9DD4C-B066-4E1E-BAC2-D33101CD5DF7}'] ['{13C319F8-BC1E-46CD-BC7C-12066E8FF77F}']
{ Property getters and setters } { Property getters and setters }
function GetANOValue: String; function GetANOValue: String;
procedure SetANOValue(const aValue: String); procedure SetANOValue(const aValue: String);
@ -180,7 +186,7 @@ type
{ IAlbaranesProveedor } { IAlbaranesProveedor }
IAlbaranesProveedor = interface(IDAStronglyTypedDataTable) IAlbaranesProveedor = interface(IDAStronglyTypedDataTable)
['{3499891E-76EE-4361-ADB9-AAD05B52D9BE}'] ['{565E5A26-910C-4346-BF87-00CC1D29FA04}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -226,10 +232,10 @@ type
procedure SetID_PEDIDOValue(const aValue: Integer); procedure SetID_PEDIDOValue(const aValue: Integer);
function GetID_PEDIDOIsNull: Boolean; function GetID_PEDIDOIsNull: Boolean;
procedure SetID_PEDIDOIsNull(const aValue: Boolean); procedure SetID_PEDIDOIsNull(const aValue: Boolean);
function GetREF_PED_PROVEEDORValue: String; function GetREF_PEDIDOS_PROVValue: String;
procedure SetREF_PED_PROVEEDORValue(const aValue: String); procedure SetREF_PEDIDOS_PROVValue(const aValue: String);
function GetREF_PED_PROVEEDORIsNull: Boolean; function GetREF_PEDIDOS_PROVIsNull: Boolean;
procedure SetREF_PED_PROVEEDORIsNull(const aValue: Boolean); procedure SetREF_PEDIDOS_PROVIsNull(const aValue: Boolean);
function GetID_FACTURAValue: Integer; function GetID_FACTURAValue: Integer;
procedure SetID_FACTURAValue(const aValue: Integer); procedure SetID_FACTURAValue(const aValue: Integer);
function GetID_FACTURAIsNull: Boolean; function GetID_FACTURAIsNull: Boolean;
@ -336,6 +342,18 @@ type
procedure SetTIENDAValue(const aValue: String); procedure SetTIENDAValue(const aValue: String);
function GetTIENDAIsNull: Boolean; function GetTIENDAIsNull: Boolean;
procedure SetTIENDAIsNull(const aValue: Boolean); procedure SetTIENDAIsNull(const aValue: Boolean);
function GetID_ALBARANValue: Integer;
procedure SetID_ALBARANValue(const aValue: Integer);
function GetID_ALBARANIsNull: Boolean;
procedure SetID_ALBARANIsNull(const aValue: Boolean);
function GetREF_ALB_PROVValue: String;
procedure SetREF_ALB_PROVValue(const aValue: String);
function GetREF_ALB_PROVIsNull: Boolean;
procedure SetREF_ALB_PROVIsNull(const aValue: Boolean);
function GetREF_PED_PROV_PADREValue: String;
procedure SetREF_PED_PROV_PADREValue(const aValue: String);
function GetREF_PED_PROV_PADREIsNull: Boolean;
procedure SetREF_PED_PROV_PADREIsNull(const aValue: Boolean);
{ Properties } { Properties }
@ -361,8 +379,8 @@ type
property NOMBRE_ALMACENIsNull: Boolean read GetNOMBRE_ALMACENIsNull write SetNOMBRE_ALMACENIsNull; property NOMBRE_ALMACENIsNull: Boolean read GetNOMBRE_ALMACENIsNull write SetNOMBRE_ALMACENIsNull;
property ID_PEDIDO: Integer read GetID_PEDIDOValue write SetID_PEDIDOValue; property ID_PEDIDO: Integer read GetID_PEDIDOValue write SetID_PEDIDOValue;
property ID_PEDIDOIsNull: Boolean read GetID_PEDIDOIsNull write SetID_PEDIDOIsNull; property ID_PEDIDOIsNull: Boolean read GetID_PEDIDOIsNull write SetID_PEDIDOIsNull;
property REF_PED_PROVEEDOR: String read GetREF_PED_PROVEEDORValue write SetREF_PED_PROVEEDORValue; property REF_PEDIDOS_PROV: String read GetREF_PEDIDOS_PROVValue write SetREF_PEDIDOS_PROVValue;
property REF_PED_PROVEEDORIsNull: Boolean read GetREF_PED_PROVEEDORIsNull write SetREF_PED_PROVEEDORIsNull; property REF_PEDIDOS_PROVIsNull: Boolean read GetREF_PEDIDOS_PROVIsNull write SetREF_PEDIDOS_PROVIsNull;
property ID_FACTURA: Integer read GetID_FACTURAValue write SetID_FACTURAValue; property ID_FACTURA: Integer read GetID_FACTURAValue write SetID_FACTURAValue;
property ID_FACTURAIsNull: Boolean read GetID_FACTURAIsNull write SetID_FACTURAIsNull; property ID_FACTURAIsNull: Boolean read GetID_FACTURAIsNull write SetID_FACTURAIsNull;
property REF_FACTURA: String read GetREF_FACTURAValue write SetREF_FACTURAValue; property REF_FACTURA: String read GetREF_FACTURAValue write SetREF_FACTURAValue;
@ -417,6 +435,12 @@ type
property ID_TIENDAIsNull: Boolean read GetID_TIENDAIsNull write SetID_TIENDAIsNull; property ID_TIENDAIsNull: Boolean read GetID_TIENDAIsNull write SetID_TIENDAIsNull;
property TIENDA: String read GetTIENDAValue write SetTIENDAValue; property TIENDA: String read GetTIENDAValue write SetTIENDAValue;
property TIENDAIsNull: Boolean read GetTIENDAIsNull write SetTIENDAIsNull; property TIENDAIsNull: Boolean read GetTIENDAIsNull write SetTIENDAIsNull;
property ID_ALBARAN: Integer read GetID_ALBARANValue write SetID_ALBARANValue;
property ID_ALBARANIsNull: Boolean read GetID_ALBARANIsNull write SetID_ALBARANIsNull;
property REF_ALB_PROV: String read GetREF_ALB_PROVValue write SetREF_ALB_PROVValue;
property REF_ALB_PROVIsNull: Boolean read GetREF_ALB_PROVIsNull write SetREF_ALB_PROVIsNull;
property REF_PED_PROV_PADRE: String read GetREF_PED_PROV_PADREValue write SetREF_PED_PROV_PADREValue;
property REF_PED_PROV_PADREIsNull: Boolean read GetREF_PED_PROV_PADREIsNull write SetREF_PED_PROV_PADREIsNull;
end; end;
{ TAlbaranesProveedorDataTableRules } { TAlbaranesProveedorDataTableRules }
@ -472,10 +496,10 @@ type
procedure SetID_PEDIDOValue(const aValue: Integer); virtual; procedure SetID_PEDIDOValue(const aValue: Integer); virtual;
function GetID_PEDIDOIsNull: Boolean; virtual; function GetID_PEDIDOIsNull: Boolean; virtual;
procedure SetID_PEDIDOIsNull(const aValue: Boolean); virtual; procedure SetID_PEDIDOIsNull(const aValue: Boolean); virtual;
function GetREF_PED_PROVEEDORValue: String; virtual; function GetREF_PEDIDOS_PROVValue: String; virtual;
procedure SetREF_PED_PROVEEDORValue(const aValue: String); virtual; procedure SetREF_PEDIDOS_PROVValue(const aValue: String); virtual;
function GetREF_PED_PROVEEDORIsNull: Boolean; virtual; function GetREF_PEDIDOS_PROVIsNull: Boolean; virtual;
procedure SetREF_PED_PROVEEDORIsNull(const aValue: Boolean); virtual; procedure SetREF_PEDIDOS_PROVIsNull(const aValue: Boolean); virtual;
function GetID_FACTURAValue: Integer; virtual; function GetID_FACTURAValue: Integer; virtual;
procedure SetID_FACTURAValue(const aValue: Integer); virtual; procedure SetID_FACTURAValue(const aValue: Integer); virtual;
function GetID_FACTURAIsNull: Boolean; virtual; function GetID_FACTURAIsNull: Boolean; virtual;
@ -582,6 +606,18 @@ type
procedure SetTIENDAValue(const aValue: String); virtual; procedure SetTIENDAValue(const aValue: String); virtual;
function GetTIENDAIsNull: Boolean; virtual; function GetTIENDAIsNull: Boolean; virtual;
procedure SetTIENDAIsNull(const aValue: Boolean); virtual; procedure SetTIENDAIsNull(const aValue: Boolean); virtual;
function GetID_ALBARANValue: Integer; virtual;
procedure SetID_ALBARANValue(const aValue: Integer); virtual;
function GetID_ALBARANIsNull: Boolean; virtual;
procedure SetID_ALBARANIsNull(const aValue: Boolean); virtual;
function GetREF_ALB_PROVValue: String; virtual;
procedure SetREF_ALB_PROVValue(const aValue: String); virtual;
function GetREF_ALB_PROVIsNull: Boolean; virtual;
procedure SetREF_ALB_PROVIsNull(const aValue: Boolean); virtual;
function GetREF_PED_PROV_PADREValue: String; virtual;
procedure SetREF_PED_PROV_PADREValue(const aValue: String); virtual;
function GetREF_PED_PROV_PADREIsNull: Boolean; virtual;
procedure SetREF_PED_PROV_PADREIsNull(const aValue: Boolean); virtual;
{ Properties } { Properties }
property ID: Integer read GetIDValue write SetIDValue; property ID: Integer read GetIDValue write SetIDValue;
@ -606,8 +642,8 @@ type
property NOMBRE_ALMACENIsNull: Boolean read GetNOMBRE_ALMACENIsNull write SetNOMBRE_ALMACENIsNull; property NOMBRE_ALMACENIsNull: Boolean read GetNOMBRE_ALMACENIsNull write SetNOMBRE_ALMACENIsNull;
property ID_PEDIDO: Integer read GetID_PEDIDOValue write SetID_PEDIDOValue; property ID_PEDIDO: Integer read GetID_PEDIDOValue write SetID_PEDIDOValue;
property ID_PEDIDOIsNull: Boolean read GetID_PEDIDOIsNull write SetID_PEDIDOIsNull; property ID_PEDIDOIsNull: Boolean read GetID_PEDIDOIsNull write SetID_PEDIDOIsNull;
property REF_PED_PROVEEDOR: String read GetREF_PED_PROVEEDORValue write SetREF_PED_PROVEEDORValue; property REF_PEDIDOS_PROV: String read GetREF_PEDIDOS_PROVValue write SetREF_PEDIDOS_PROVValue;
property REF_PED_PROVEEDORIsNull: Boolean read GetREF_PED_PROVEEDORIsNull write SetREF_PED_PROVEEDORIsNull; property REF_PEDIDOS_PROVIsNull: Boolean read GetREF_PEDIDOS_PROVIsNull write SetREF_PEDIDOS_PROVIsNull;
property ID_FACTURA: Integer read GetID_FACTURAValue write SetID_FACTURAValue; property ID_FACTURA: Integer read GetID_FACTURAValue write SetID_FACTURAValue;
property ID_FACTURAIsNull: Boolean read GetID_FACTURAIsNull write SetID_FACTURAIsNull; property ID_FACTURAIsNull: Boolean read GetID_FACTURAIsNull write SetID_FACTURAIsNull;
property REF_FACTURA: String read GetREF_FACTURAValue write SetREF_FACTURAValue; property REF_FACTURA: String read GetREF_FACTURAValue write SetREF_FACTURAValue;
@ -662,6 +698,12 @@ type
property ID_TIENDAIsNull: Boolean read GetID_TIENDAIsNull write SetID_TIENDAIsNull; property ID_TIENDAIsNull: Boolean read GetID_TIENDAIsNull write SetID_TIENDAIsNull;
property TIENDA: String read GetTIENDAValue write SetTIENDAValue; property TIENDA: String read GetTIENDAValue write SetTIENDAValue;
property TIENDAIsNull: Boolean read GetTIENDAIsNull write SetTIENDAIsNull; property TIENDAIsNull: Boolean read GetTIENDAIsNull write SetTIENDAIsNull;
property ID_ALBARAN: Integer read GetID_ALBARANValue write SetID_ALBARANValue;
property ID_ALBARANIsNull: Boolean read GetID_ALBARANIsNull write SetID_ALBARANIsNull;
property REF_ALB_PROV: String read GetREF_ALB_PROVValue write SetREF_ALB_PROVValue;
property REF_ALB_PROVIsNull: Boolean read GetREF_ALB_PROVIsNull write SetREF_ALB_PROVIsNull;
property REF_PED_PROV_PADRE: String read GetREF_PED_PROV_PADREValue write SetREF_PED_PROV_PADREValue;
property REF_PED_PROV_PADREIsNull: Boolean read GetREF_PED_PROV_PADREIsNull write SetREF_PED_PROV_PADREIsNull;
public public
constructor Create(aDataTable: TDADataTable); override; constructor Create(aDataTable: TDADataTable); override;
@ -671,7 +713,7 @@ type
{ IAlbaranesProveedor_Detalles } { IAlbaranesProveedor_Detalles }
IAlbaranesProveedor_Detalles = interface(IDAStronglyTypedDataTable) IAlbaranesProveedor_Detalles = interface(IDAStronglyTypedDataTable)
['{C2D2EEEB-4B4B-487D-BAA5-601DF6526278}'] ['{32C95867-734A-4F15-8D4C-FEE27572295C}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -1183,25 +1225,25 @@ begin
DataTable.Fields[idx_AlbaranesProveedorID_PEDIDO].AsVariant := Null; DataTable.Fields[idx_AlbaranesProveedorID_PEDIDO].AsVariant := Null;
end; end;
function TAlbaranesProveedorDataTableRules.GetREF_PED_PROVEEDORValue: String; function TAlbaranesProveedorDataTableRules.GetREF_PEDIDOS_PROVValue: String;
begin begin
result := DataTable.Fields[idx_AlbaranesProveedorREF_PED_PROVEEDOR].AsString; result := DataTable.Fields[idx_AlbaranesProveedorREF_PEDIDOS_PROV].AsString;
end; end;
procedure TAlbaranesProveedorDataTableRules.SetREF_PED_PROVEEDORValue(const aValue: String); procedure TAlbaranesProveedorDataTableRules.SetREF_PEDIDOS_PROVValue(const aValue: String);
begin begin
DataTable.Fields[idx_AlbaranesProveedorREF_PED_PROVEEDOR].AsString := aValue; DataTable.Fields[idx_AlbaranesProveedorREF_PEDIDOS_PROV].AsString := aValue;
end; end;
function TAlbaranesProveedorDataTableRules.GetREF_PED_PROVEEDORIsNull: boolean; function TAlbaranesProveedorDataTableRules.GetREF_PEDIDOS_PROVIsNull: boolean;
begin begin
result := DataTable.Fields[idx_AlbaranesProveedorREF_PED_PROVEEDOR].IsNull; result := DataTable.Fields[idx_AlbaranesProveedorREF_PEDIDOS_PROV].IsNull;
end; end;
procedure TAlbaranesProveedorDataTableRules.SetREF_PED_PROVEEDORIsNull(const aValue: Boolean); procedure TAlbaranesProveedorDataTableRules.SetREF_PEDIDOS_PROVIsNull(const aValue: Boolean);
begin begin
if aValue then if aValue then
DataTable.Fields[idx_AlbaranesProveedorREF_PED_PROVEEDOR].AsVariant := Null; DataTable.Fields[idx_AlbaranesProveedorREF_PEDIDOS_PROV].AsVariant := Null;
end; end;
function TAlbaranesProveedorDataTableRules.GetID_FACTURAValue: Integer; function TAlbaranesProveedorDataTableRules.GetID_FACTURAValue: Integer;
@ -1763,6 +1805,69 @@ begin
DataTable.Fields[idx_AlbaranesProveedorTIENDA].AsVariant := Null; DataTable.Fields[idx_AlbaranesProveedorTIENDA].AsVariant := Null;
end; end;
function TAlbaranesProveedorDataTableRules.GetID_ALBARANValue: Integer;
begin
result := DataTable.Fields[idx_AlbaranesProveedorID_ALBARAN].AsInteger;
end;
procedure TAlbaranesProveedorDataTableRules.SetID_ALBARANValue(const aValue: Integer);
begin
DataTable.Fields[idx_AlbaranesProveedorID_ALBARAN].AsInteger := aValue;
end;
function TAlbaranesProveedorDataTableRules.GetID_ALBARANIsNull: boolean;
begin
result := DataTable.Fields[idx_AlbaranesProveedorID_ALBARAN].IsNull;
end;
procedure TAlbaranesProveedorDataTableRules.SetID_ALBARANIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_AlbaranesProveedorID_ALBARAN].AsVariant := Null;
end;
function TAlbaranesProveedorDataTableRules.GetREF_ALB_PROVValue: String;
begin
result := DataTable.Fields[idx_AlbaranesProveedorREF_ALB_PROV].AsString;
end;
procedure TAlbaranesProveedorDataTableRules.SetREF_ALB_PROVValue(const aValue: String);
begin
DataTable.Fields[idx_AlbaranesProveedorREF_ALB_PROV].AsString := aValue;
end;
function TAlbaranesProveedorDataTableRules.GetREF_ALB_PROVIsNull: boolean;
begin
result := DataTable.Fields[idx_AlbaranesProveedorREF_ALB_PROV].IsNull;
end;
procedure TAlbaranesProveedorDataTableRules.SetREF_ALB_PROVIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_AlbaranesProveedorREF_ALB_PROV].AsVariant := Null;
end;
function TAlbaranesProveedorDataTableRules.GetREF_PED_PROV_PADREValue: String;
begin
result := DataTable.Fields[idx_AlbaranesProveedorREF_PED_PROV_PADRE].AsString;
end;
procedure TAlbaranesProveedorDataTableRules.SetREF_PED_PROV_PADREValue(const aValue: String);
begin
DataTable.Fields[idx_AlbaranesProveedorREF_PED_PROV_PADRE].AsString := aValue;
end;
function TAlbaranesProveedorDataTableRules.GetREF_PED_PROV_PADREIsNull: boolean;
begin
result := DataTable.Fields[idx_AlbaranesProveedorREF_PED_PROV_PADRE].IsNull;
end;
procedure TAlbaranesProveedorDataTableRules.SetREF_PED_PROV_PADREIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_AlbaranesProveedorREF_PED_PROV_PADRE].AsVariant := Null;
end;
{ TAlbaranesProveedor_DetallesDataTableRules } { TAlbaranesProveedor_DetallesDataTableRules }
constructor TAlbaranesProveedor_DetallesDataTableRules.Create(aDataTable: TDADataTable); constructor TAlbaranesProveedor_DetallesDataTableRules.Create(aDataTable: TDADataTable);

View File

@ -9,14 +9,14 @@ const
{ Delta rules ids { Delta rules ids
Feel free to change them to something more human readable Feel free to change them to something more human readable
but make sure they are unique in the context of your application } but make sure they are unique in the context of your application }
RID_ListaAnosAlbaranesDelta = '{EB7BC9BB-BE99-4924-938C-57444404FC70}'; RID_ListaAnosAlbaranesDelta = '{3AD75BCA-82CA-4376-A24D-D4906FF762DB}';
RID_AlbaranesProveedorDelta = '{FDC593A7-FCEB-4038-B70B-3278EA632968}'; RID_AlbaranesProveedorDelta = '{178B2E8D-458D-4467-AC14-CA8FC4E00229}';
RID_AlbaranesProveedor_DetallesDelta = '{C4CAA354-B990-4830-BF20-21B9958F343D}'; RID_AlbaranesProveedor_DetallesDelta = '{A380607B-556C-478A-9D4C-E20681545A86}';
type type
{ IListaAnosAlbaranesDelta } { IListaAnosAlbaranesDelta }
IListaAnosAlbaranesDelta = interface(IListaAnosAlbaranes) IListaAnosAlbaranesDelta = interface(IListaAnosAlbaranes)
['{EB7BC9BB-BE99-4924-938C-57444404FC70}'] ['{3AD75BCA-82CA-4376-A24D-D4906FF762DB}']
{ Property getters and setters } { Property getters and setters }
function GetOldANOValue : String; function GetOldANOValue : String;
@ -50,7 +50,7 @@ type
{ IAlbaranesProveedorDelta } { IAlbaranesProveedorDelta }
IAlbaranesProveedorDelta = interface(IAlbaranesProveedor) IAlbaranesProveedorDelta = interface(IAlbaranesProveedor)
['{FDC593A7-FCEB-4038-B70B-3278EA632968}'] ['{178B2E8D-458D-4467-AC14-CA8FC4E00229}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer; function GetOldID_EMPRESAValue : Integer;
@ -63,7 +63,7 @@ type
function GetOldID_ALMACENValue : Integer; function GetOldID_ALMACENValue : Integer;
function GetOldNOMBRE_ALMACENValue : String; function GetOldNOMBRE_ALMACENValue : String;
function GetOldID_PEDIDOValue : Integer; function GetOldID_PEDIDOValue : Integer;
function GetOldREF_PED_PROVEEDORValue : String; function GetOldREF_PEDIDOS_PROVValue : String;
function GetOldID_FACTURAValue : Integer; function GetOldID_FACTURAValue : Integer;
function GetOldREF_FACTURAValue : String; function GetOldREF_FACTURAValue : String;
function GetOldREF_FACTURA_PROVValue : String; function GetOldREF_FACTURA_PROVValue : String;
@ -91,6 +91,9 @@ type
function GetOldID_FORMA_PAGOValue : Integer; function GetOldID_FORMA_PAGOValue : Integer;
function GetOldID_TIENDAValue : Integer; function GetOldID_TIENDAValue : Integer;
function GetOldTIENDAValue : String; function GetOldTIENDAValue : String;
function GetOldID_ALBARANValue : Integer;
function GetOldREF_ALB_PROVValue : String;
function GetOldREF_PED_PROV_PADREValue : String;
{ Properties } { Properties }
property OldID : Integer read GetOldIDValue; property OldID : Integer read GetOldIDValue;
@ -104,7 +107,7 @@ type
property OldID_ALMACEN : Integer read GetOldID_ALMACENValue; property OldID_ALMACEN : Integer read GetOldID_ALMACENValue;
property OldNOMBRE_ALMACEN : String read GetOldNOMBRE_ALMACENValue; property OldNOMBRE_ALMACEN : String read GetOldNOMBRE_ALMACENValue;
property OldID_PEDIDO : Integer read GetOldID_PEDIDOValue; property OldID_PEDIDO : Integer read GetOldID_PEDIDOValue;
property OldREF_PED_PROVEEDOR : String read GetOldREF_PED_PROVEEDORValue; property OldREF_PEDIDOS_PROV : String read GetOldREF_PEDIDOS_PROVValue;
property OldID_FACTURA : Integer read GetOldID_FACTURAValue; property OldID_FACTURA : Integer read GetOldID_FACTURAValue;
property OldREF_FACTURA : String read GetOldREF_FACTURAValue; property OldREF_FACTURA : String read GetOldREF_FACTURAValue;
property OldREF_FACTURA_PROV : String read GetOldREF_FACTURA_PROVValue; property OldREF_FACTURA_PROV : String read GetOldREF_FACTURA_PROVValue;
@ -132,6 +135,9 @@ type
property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue; property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue;
property OldID_TIENDA : Integer read GetOldID_TIENDAValue; property OldID_TIENDA : Integer read GetOldID_TIENDAValue;
property OldTIENDA : String read GetOldTIENDAValue; property OldTIENDA : String read GetOldTIENDAValue;
property OldID_ALBARAN : Integer read GetOldID_ALBARANValue;
property OldREF_ALB_PROV : String read GetOldREF_ALB_PROVValue;
property OldREF_PED_PROV_PADRE : String read GetOldREF_PED_PROV_PADREValue;
end; end;
{ TAlbaranesProveedorBusinessProcessorRules } { TAlbaranesProveedorBusinessProcessorRules }
@ -209,12 +215,12 @@ type
function GetOldID_PEDIDOIsNull: Boolean; virtual; function GetOldID_PEDIDOIsNull: Boolean; virtual;
procedure SetID_PEDIDOValue(const aValue: Integer); virtual; procedure SetID_PEDIDOValue(const aValue: Integer); virtual;
procedure SetID_PEDIDOIsNull(const aValue: Boolean); virtual; procedure SetID_PEDIDOIsNull(const aValue: Boolean); virtual;
function GetREF_PED_PROVEEDORValue: String; virtual; function GetREF_PEDIDOS_PROVValue: String; virtual;
function GetREF_PED_PROVEEDORIsNull: Boolean; virtual; function GetREF_PEDIDOS_PROVIsNull: Boolean; virtual;
function GetOldREF_PED_PROVEEDORValue: String; virtual; function GetOldREF_PEDIDOS_PROVValue: String; virtual;
function GetOldREF_PED_PROVEEDORIsNull: Boolean; virtual; function GetOldREF_PEDIDOS_PROVIsNull: Boolean; virtual;
procedure SetREF_PED_PROVEEDORValue(const aValue: String); virtual; procedure SetREF_PEDIDOS_PROVValue(const aValue: String); virtual;
procedure SetREF_PED_PROVEEDORIsNull(const aValue: Boolean); virtual; procedure SetREF_PEDIDOS_PROVIsNull(const aValue: Boolean); virtual;
function GetID_FACTURAValue: Integer; virtual; function GetID_FACTURAValue: Integer; virtual;
function GetID_FACTURAIsNull: Boolean; virtual; function GetID_FACTURAIsNull: Boolean; virtual;
function GetOldID_FACTURAValue: Integer; virtual; function GetOldID_FACTURAValue: Integer; virtual;
@ -375,6 +381,24 @@ type
function GetOldTIENDAIsNull: Boolean; virtual; function GetOldTIENDAIsNull: Boolean; virtual;
procedure SetTIENDAValue(const aValue: String); virtual; procedure SetTIENDAValue(const aValue: String); virtual;
procedure SetTIENDAIsNull(const aValue: Boolean); virtual; procedure SetTIENDAIsNull(const aValue: Boolean); virtual;
function GetID_ALBARANValue: Integer; virtual;
function GetID_ALBARANIsNull: Boolean; virtual;
function GetOldID_ALBARANValue: Integer; virtual;
function GetOldID_ALBARANIsNull: Boolean; virtual;
procedure SetID_ALBARANValue(const aValue: Integer); virtual;
procedure SetID_ALBARANIsNull(const aValue: Boolean); virtual;
function GetREF_ALB_PROVValue: String; virtual;
function GetREF_ALB_PROVIsNull: Boolean; virtual;
function GetOldREF_ALB_PROVValue: String; virtual;
function GetOldREF_ALB_PROVIsNull: Boolean; virtual;
procedure SetREF_ALB_PROVValue(const aValue: String); virtual;
procedure SetREF_ALB_PROVIsNull(const aValue: Boolean); virtual;
function GetREF_PED_PROV_PADREValue: String; virtual;
function GetREF_PED_PROV_PADREIsNull: Boolean; virtual;
function GetOldREF_PED_PROV_PADREValue: String; virtual;
function GetOldREF_PED_PROV_PADREIsNull: Boolean; virtual;
procedure SetREF_PED_PROV_PADREValue(const aValue: String); virtual;
procedure SetREF_PED_PROV_PADREIsNull(const aValue: Boolean); virtual;
{ Properties } { Properties }
property ID : Integer read GetIDValue write SetIDValue; property ID : Integer read GetIDValue write SetIDValue;
@ -421,10 +445,10 @@ type
property ID_PEDIDOIsNull : Boolean read GetID_PEDIDOIsNull write SetID_PEDIDOIsNull; property ID_PEDIDOIsNull : Boolean read GetID_PEDIDOIsNull write SetID_PEDIDOIsNull;
property OldID_PEDIDO : Integer read GetOldID_PEDIDOValue; property OldID_PEDIDO : Integer read GetOldID_PEDIDOValue;
property OldID_PEDIDOIsNull : Boolean read GetOldID_PEDIDOIsNull; property OldID_PEDIDOIsNull : Boolean read GetOldID_PEDIDOIsNull;
property REF_PED_PROVEEDOR : String read GetREF_PED_PROVEEDORValue write SetREF_PED_PROVEEDORValue; property REF_PEDIDOS_PROV : String read GetREF_PEDIDOS_PROVValue write SetREF_PEDIDOS_PROVValue;
property REF_PED_PROVEEDORIsNull : Boolean read GetREF_PED_PROVEEDORIsNull write SetREF_PED_PROVEEDORIsNull; property REF_PEDIDOS_PROVIsNull : Boolean read GetREF_PEDIDOS_PROVIsNull write SetREF_PEDIDOS_PROVIsNull;
property OldREF_PED_PROVEEDOR : String read GetOldREF_PED_PROVEEDORValue; property OldREF_PEDIDOS_PROV : String read GetOldREF_PEDIDOS_PROVValue;
property OldREF_PED_PROVEEDORIsNull : Boolean read GetOldREF_PED_PROVEEDORIsNull; property OldREF_PEDIDOS_PROVIsNull : Boolean read GetOldREF_PEDIDOS_PROVIsNull;
property ID_FACTURA : Integer read GetID_FACTURAValue write SetID_FACTURAValue; property ID_FACTURA : Integer read GetID_FACTURAValue write SetID_FACTURAValue;
property ID_FACTURAIsNull : Boolean read GetID_FACTURAIsNull write SetID_FACTURAIsNull; property ID_FACTURAIsNull : Boolean read GetID_FACTURAIsNull write SetID_FACTURAIsNull;
property OldID_FACTURA : Integer read GetOldID_FACTURAValue; property OldID_FACTURA : Integer read GetOldID_FACTURAValue;
@ -533,6 +557,18 @@ type
property TIENDAIsNull : Boolean read GetTIENDAIsNull write SetTIENDAIsNull; property TIENDAIsNull : Boolean read GetTIENDAIsNull write SetTIENDAIsNull;
property OldTIENDA : String read GetOldTIENDAValue; property OldTIENDA : String read GetOldTIENDAValue;
property OldTIENDAIsNull : Boolean read GetOldTIENDAIsNull; property OldTIENDAIsNull : Boolean read GetOldTIENDAIsNull;
property ID_ALBARAN : Integer read GetID_ALBARANValue write SetID_ALBARANValue;
property ID_ALBARANIsNull : Boolean read GetID_ALBARANIsNull write SetID_ALBARANIsNull;
property OldID_ALBARAN : Integer read GetOldID_ALBARANValue;
property OldID_ALBARANIsNull : Boolean read GetOldID_ALBARANIsNull;
property REF_ALB_PROV : String read GetREF_ALB_PROVValue write SetREF_ALB_PROVValue;
property REF_ALB_PROVIsNull : Boolean read GetREF_ALB_PROVIsNull write SetREF_ALB_PROVIsNull;
property OldREF_ALB_PROV : String read GetOldREF_ALB_PROVValue;
property OldREF_ALB_PROVIsNull : Boolean read GetOldREF_ALB_PROVIsNull;
property REF_PED_PROV_PADRE : String read GetREF_PED_PROV_PADREValue write SetREF_PED_PROV_PADREValue;
property REF_PED_PROV_PADREIsNull : Boolean read GetREF_PED_PROV_PADREIsNull write SetREF_PED_PROV_PADREIsNull;
property OldREF_PED_PROV_PADRE : String read GetOldREF_PED_PROV_PADREValue;
property OldREF_PED_PROV_PADREIsNull : Boolean read GetOldREF_PED_PROV_PADREIsNull;
public public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override; constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -542,7 +578,7 @@ type
{ IAlbaranesProveedor_DetallesDelta } { IAlbaranesProveedor_DetallesDelta }
IAlbaranesProveedor_DetallesDelta = interface(IAlbaranesProveedor_Detalles) IAlbaranesProveedor_DetallesDelta = interface(IAlbaranesProveedor_Detalles)
['{C4CAA354-B990-4830-BF20-21B9958F343D}'] ['{A380607B-556C-478A-9D4C-E20681545A86}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_ALBARANValue : Integer; function GetOldID_ALBARANValue : Integer;
@ -1174,35 +1210,35 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorID_PEDIDO] := Null; BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorID_PEDIDO] := Null;
end; end;
function TAlbaranesProveedorBusinessProcessorRules.GetREF_PED_PROVEEDORValue: String; function TAlbaranesProveedorBusinessProcessorRules.GetREF_PEDIDOS_PROVValue: String;
begin begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorREF_PED_PROVEEDOR]; result := BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorREF_PEDIDOS_PROV];
end; end;
function TAlbaranesProveedorBusinessProcessorRules.GetREF_PED_PROVEEDORIsNull: Boolean; function TAlbaranesProveedorBusinessProcessorRules.GetREF_PEDIDOS_PROVIsNull: Boolean;
begin begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorREF_PED_PROVEEDOR]); result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorREF_PEDIDOS_PROV]);
end; end;
function TAlbaranesProveedorBusinessProcessorRules.GetOldREF_PED_PROVEEDORValue: String; function TAlbaranesProveedorBusinessProcessorRules.GetOldREF_PEDIDOS_PROVValue: String;
begin begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesProveedorREF_PED_PROVEEDOR]; result := BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesProveedorREF_PEDIDOS_PROV];
end; end;
function TAlbaranesProveedorBusinessProcessorRules.GetOldREF_PED_PROVEEDORIsNull: Boolean; function TAlbaranesProveedorBusinessProcessorRules.GetOldREF_PEDIDOS_PROVIsNull: Boolean;
begin begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesProveedorREF_PED_PROVEEDOR]); result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesProveedorREF_PEDIDOS_PROV]);
end; end;
procedure TAlbaranesProveedorBusinessProcessorRules.SetREF_PED_PROVEEDORValue(const aValue: String); procedure TAlbaranesProveedorBusinessProcessorRules.SetREF_PEDIDOS_PROVValue(const aValue: String);
begin begin
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorREF_PED_PROVEEDOR] := aValue; BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorREF_PEDIDOS_PROV] := aValue;
end; end;
procedure TAlbaranesProveedorBusinessProcessorRules.SetREF_PED_PROVEEDORIsNull(const aValue: Boolean); procedure TAlbaranesProveedorBusinessProcessorRules.SetREF_PEDIDOS_PROVIsNull(const aValue: Boolean);
begin begin
if aValue then if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorREF_PED_PROVEEDOR] := Null; BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorREF_PEDIDOS_PROV] := Null;
end; end;
function TAlbaranesProveedorBusinessProcessorRules.GetID_FACTURAValue: Integer; function TAlbaranesProveedorBusinessProcessorRules.GetID_FACTURAValue: Integer;
@ -2036,6 +2072,99 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorTIENDA] := Null; BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorTIENDA] := Null;
end; end;
function TAlbaranesProveedorBusinessProcessorRules.GetID_ALBARANValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorID_ALBARAN];
end;
function TAlbaranesProveedorBusinessProcessorRules.GetID_ALBARANIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorID_ALBARAN]);
end;
function TAlbaranesProveedorBusinessProcessorRules.GetOldID_ALBARANValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesProveedorID_ALBARAN];
end;
function TAlbaranesProveedorBusinessProcessorRules.GetOldID_ALBARANIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesProveedorID_ALBARAN]);
end;
procedure TAlbaranesProveedorBusinessProcessorRules.SetID_ALBARANValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorID_ALBARAN] := aValue;
end;
procedure TAlbaranesProveedorBusinessProcessorRules.SetID_ALBARANIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorID_ALBARAN] := Null;
end;
function TAlbaranesProveedorBusinessProcessorRules.GetREF_ALB_PROVValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorREF_ALB_PROV];
end;
function TAlbaranesProveedorBusinessProcessorRules.GetREF_ALB_PROVIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorREF_ALB_PROV]);
end;
function TAlbaranesProveedorBusinessProcessorRules.GetOldREF_ALB_PROVValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesProveedorREF_ALB_PROV];
end;
function TAlbaranesProveedorBusinessProcessorRules.GetOldREF_ALB_PROVIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesProveedorREF_ALB_PROV]);
end;
procedure TAlbaranesProveedorBusinessProcessorRules.SetREF_ALB_PROVValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorREF_ALB_PROV] := aValue;
end;
procedure TAlbaranesProveedorBusinessProcessorRules.SetREF_ALB_PROVIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorREF_ALB_PROV] := Null;
end;
function TAlbaranesProveedorBusinessProcessorRules.GetREF_PED_PROV_PADREValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorREF_PED_PROV_PADRE];
end;
function TAlbaranesProveedorBusinessProcessorRules.GetREF_PED_PROV_PADREIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorREF_PED_PROV_PADRE]);
end;
function TAlbaranesProveedorBusinessProcessorRules.GetOldREF_PED_PROV_PADREValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesProveedorREF_PED_PROV_PADRE];
end;
function TAlbaranesProveedorBusinessProcessorRules.GetOldREF_PED_PROV_PADREIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesProveedorREF_PED_PROV_PADRE]);
end;
procedure TAlbaranesProveedorBusinessProcessorRules.SetREF_PED_PROV_PADREValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorREF_PED_PROV_PADRE] := aValue;
end;
procedure TAlbaranesProveedorBusinessProcessorRules.SetREF_PED_PROV_PADREIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorREF_PED_PROV_PADRE] := Null;
end;
{ TAlbaranesProveedor_DetallesBusinessProcessorRules } { TAlbaranesProveedor_DetallesBusinessProcessorRules }
constructor TAlbaranesProveedor_DetallesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); constructor TAlbaranesProveedor_DetallesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);

View File

@ -260,9 +260,7 @@ object PluginAlbaranesProveedor: TPluginAlbaranesProveedor
object actDevolucionesProveedor: TAction object actDevolucionesProveedor: TAction
Category = 'Compras' Category = 'Compras'
Caption = 'Ordenes de devoluci'#243'n' Caption = 'Ordenes de devoluci'#243'n'
Enabled = False
ImageIndex = 1 ImageIndex = 1
Visible = False
OnExecute = actDevolucionesProveedorExecute OnExecute = actDevolucionesProveedorExecute
end end
end end

View File

@ -1,8 +1,8 @@
object RptAlbaranesProveedor: TRptAlbaranesProveedor object RptAlbaranesProveedor: TRptAlbaranesProveedor
OldCreateOrder = True OldCreateOrder = True
OnCreate = DataModuleCreate OnCreate = DataModuleCreate
Height = 405 Height = 556
Width = 447 Width = 643
object DADataCabecera: TDADataSource object DADataCabecera: TDADataSource
DataSet = tbl_Cabecera.Dataset DataSet = tbl_Cabecera.Dataset
DataTable = tbl_Cabecera DataTable = tbl_Cabecera

View File

@ -90,10 +90,6 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
DatasetField = 'ID_PEDIDO' DatasetField = 'ID_PEDIDO'
TableField = 'ID_PEDIDO' TableField = 'ID_PEDIDO'
end end
item
DatasetField = 'REF_PED_PROVEEDOR'
TableField = 'REF_PED_PROVEEDOR'
end
item item
DatasetField = 'ID_FACTURA' DatasetField = 'ID_FACTURA'
TableField = 'ID_FACTURA' TableField = 'ID_FACTURA'
@ -201,6 +197,22 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
item item
DatasetField = 'ID_TIPO_IVA' DatasetField = 'ID_TIPO_IVA'
TableField = 'ID_TIPO_IVA' TableField = 'ID_TIPO_IVA'
end
item
DatasetField = 'REF_PEDIDOS_PROV'
TableField = 'REF_PEDIDOS_PROV'
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 = 'ID_ALBARAN'
TableField = 'ID_ALBARAN'
end> end>
end> end>
Name = 'AlbaranesProveedor' Name = 'AlbaranesProveedor'
@ -269,10 +281,9 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
DictionaryEntry = 'AlbaranesProveedor_ID_PEDIDO' DictionaryEntry = 'AlbaranesProveedor_ID_PEDIDO'
end end
item item
Name = 'REF_PED_PROVEEDOR' Name = 'REF_PEDIDOS_PROV'
DataType = datString DataType = datString
Size = 255 Size = 255
DictionaryEntry = 'AlbaranesProveedor_REF_PED_PROVEEDOR'
end end
item item
Name = 'ID_FACTURA' Name = 'ID_FACTURA'
@ -415,6 +426,20 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
Name = 'TIENDA' Name = 'TIENDA'
DataType = datString DataType = datString
Size = 255 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> end>
end end
item item
@ -766,6 +791,17 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
Name = 'ID_TIENDA' Name = 'ID_TIENDA'
DataType = datInteger DataType = datInteger
Value = '' Value = ''
end
item
Name = 'REF_PEDIDOS_PROV'
DataType = datString
Size = 255
Value = ''
end
item
Name = 'ID_ALBARAN'
DataType = datInteger
Value = ''
end> end>
Statements = < Statements = <
item item
@ -780,17 +816,18 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
'DESCUENTO,'#10' IMPORTE_DESCUENTO,'#10' IVA,'#10' IMPORTE_IVA,'#10' ' + 'DESCUENTO,'#10' IMPORTE_DESCUENTO,'#10' IVA,'#10' IMPORTE_IVA,'#10' ' +
'IMPORTE_TOTAL,'#10' OBSERVACIONES,'#10' INCIDENCIAS,'#10' INCIDENCI' + 'IMPORTE_TOTAL,'#10' OBSERVACIONES,'#10' INCIDENCIAS,'#10' INCIDENCI' +
'AS_ACTIVAS,'#10' FECHA_ALTA,'#10' USUARIO,'#10' ID_ALMACEN,'#10' ID_' + 'AS_ACTIVAS,'#10' FECHA_ALTA,'#10' USUARIO,'#10' ID_ALMACEN,'#10' ID_' +
'FORMA_PAGO,'#10' IMPORTE_NETO,'#10' IMPORTE_PORTE,'#10' ID_TIENDA)'#10 + 'FORMA_PAGO,'#10' IMPORTE_NETO,'#10' IMPORTE_PORTE,'#10' ID_TIENDA,'#10 +
' VALUES ('#10' :ID,'#10' :ID_EMPRESA,'#10' :ID_PROVEEDOR,'#10' :FEC' + ' REF_PEDIDOS_PROV,'#10' ID_ALBARAN)'#10' VALUES ('#10' :ID,'#10' :I' +
'HA_ALBARAN,'#10' :ID_PEDIDO,'#10' :ID_FACTURA,'#10' :TIPO,'#10' :REF' + 'D_EMPRESA,'#10' :ID_PROVEEDOR,'#10' :FECHA_ALBARAN,'#10' :ID_PEDIDO' +
'ERENCIA,'#10' :REFERENCIA_PROVEEDOR,'#10' :REF_FACTURA_PROV,'#10' :' + ','#10' :ID_FACTURA,'#10' :TIPO,'#10' :REFERENCIA,'#10' :REFERENCIA_P' +
'CALLE,'#10' :CODIGO_POSTAL,'#10' :POBLACION,'#10' :PROVINCIA,'#10' :' + 'ROVEEDOR,'#10' :REF_FACTURA_PROV,'#10' :CALLE,'#10' :CODIGO_POSTAL,' +
'PERSONA_CONTACTO,'#10' :TELEFONO,'#10' :BASE_IMPONIBLE,'#10' :DESCU' + #10' :POBLACION,'#10' :PROVINCIA,'#10' :PERSONA_CONTACTO,'#10' :TEL' +
'ENTO,'#10' :IMPORTE_DESCUENTO,'#10' :IVA,'#10' :IMPORTE_IVA,'#10' :I' + 'EFONO,'#10' :BASE_IMPONIBLE,'#10' :DESCUENTO,'#10' :IMPORTE_DESCUEN' +
'MPORTE_TOTAL,'#10' :OBSERVACIONES,'#10' :INCIDENCIAS,'#10' :INCIDEN' + 'TO,'#10' :IVA,'#10' :IMPORTE_IVA,'#10' :IMPORTE_TOTAL,'#10' :OBSERVA' +
'CIAS_ACTIVAS,'#10' CURRENT_TIMESTAMP,'#10' :USUARIO,'#10' :ID_ALMAC' + 'CIONES,'#10' :INCIDENCIAS,'#10' :INCIDENCIAS_ACTIVAS,'#10' CURRENT_' +
'EN,'#10' :ID_FORMA_PAGO,'#10' :IMPORTE_NETO,'#10' :IMPORTE_PORTE,'#10' ' + 'TIMESTAMP,'#10' :USUARIO,'#10' :ID_ALMACEN,'#10' :ID_FORMA_PAGO,'#10' ' +
' :ID_TIENDA);'#10 ' :IMPORTE_NETO,'#10' :IMPORTE_PORTE,'#10' :ID_TIENDA,'#10' :REF_PE' +
'DIDOS_PROV,'#10' :ID_ALBARAN);'#10
StatementType = stSQL StatementType = stSQL
ColumnMappings = <> ColumnMappings = <>
end> end>
@ -818,122 +855,174 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
Params = < Params = <
item item
Name = 'ID_EMPRESA' Name = 'ID_EMPRESA'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'ID_PROVEEDOR' Name = 'ID_PROVEEDOR'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'FECHA_ALBARAN' Name = 'FECHA_ALBARAN'
DataType = datDateTime
Value = '' Value = ''
end end
item item
Name = 'ID_PEDIDO' Name = 'ID_PEDIDO'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'ID_FACTURA' Name = 'ID_FACTURA'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'TIPO' Name = 'TIPO'
DataType = datString
Size = 1
Value = '' Value = ''
end end
item item
Name = 'REFERENCIA' Name = 'REFERENCIA'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'REFERENCIA_PROVEEDOR' Name = 'REFERENCIA_PROVEEDOR'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'REF_FACTURA_PROV' Name = 'REF_FACTURA_PROV'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'CALLE' Name = 'CALLE'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'CODIGO_POSTAL' Name = 'CODIGO_POSTAL'
DataType = datString
Size = 10
Value = '' Value = ''
end end
item item
Name = 'POBLACION' Name = 'POBLACION'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'PROVINCIA' Name = 'PROVINCIA'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'PERSONA_CONTACTO' Name = 'PERSONA_CONTACTO'
DataType = datString
Size = 255
Value = '' Value = ''
end end
item item
Name = 'TELEFONO' Name = 'TELEFONO'
DataType = datString
Size = 25
Value = '' Value = ''
end end
item item
Name = 'BASE_IMPONIBLE' Name = 'BASE_IMPONIBLE'
DataType = datCurrency
Value = '' Value = ''
end end
item item
Name = 'DESCUENTO' Name = 'DESCUENTO'
DataType = datFloat
Value = '' Value = ''
end end
item item
Name = 'IMPORTE_DESCUENTO' Name = 'IMPORTE_DESCUENTO'
DataType = datCurrency
Value = '' Value = ''
end end
item item
Name = 'IVA' Name = 'IVA'
DataType = datFloat
Value = '' Value = ''
end end
item item
Name = 'IMPORTE_IVA' Name = 'IMPORTE_IVA'
DataType = datCurrency
Value = '' Value = ''
end end
item item
Name = 'IMPORTE_TOTAL' Name = 'IMPORTE_TOTAL'
DataType = datCurrency
Value = '' Value = ''
end end
item item
Name = 'OBSERVACIONES' Name = 'OBSERVACIONES'
DataType = datMemo
Value = '' Value = ''
end end
item item
Name = 'INCIDENCIAS' Name = 'INCIDENCIAS'
DataType = datMemo
Value = '' Value = ''
end end
item item
Name = 'INCIDENCIAS_ACTIVAS' Name = 'INCIDENCIAS_ACTIVAS'
DataType = datSmallInt
Value = '' Value = ''
end end
item item
Name = 'USUARIO' Name = 'USUARIO'
DataType = datString
Size = 30
Value = '' Value = ''
end end
item item
Name = 'ID_ALMACEN' Name = 'ID_ALMACEN'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'ID_FORMA_PAGO' Name = 'ID_FORMA_PAGO'
DataType = datInteger
Value = '' Value = ''
end end
item item
Name = 'IMPORTE_NETO' Name = 'IMPORTE_NETO'
DataType = datCurrency
Value = '' Value = ''
end end
item item
Name = 'IMPORTE_PORTE' Name = 'IMPORTE_PORTE'
DataType = datCurrency
Value = '' Value = ''
end end
item item
Name = 'ID_TIENDA' Name = 'ID_TIENDA'
DataType = datInteger
Value = ''
end
item
Name = 'REF_PEDIDOS_PROV'
DataType = datString
Size = 255
Value = ''
end
item
Name = 'ID_ALBARAN'
DataType = datInteger
Value = '' Value = ''
end end
item item
@ -961,7 +1050,8 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
'ODIFICACION = CURRENT_TIMESTAMP,'#10' USUARIO = :USUARIO,'#10' ID_' + 'ODIFICACION = CURRENT_TIMESTAMP,'#10' USUARIO = :USUARIO,'#10' ID_' +
'ALMACEN = :ID_ALMACEN,'#10' ID_FORMA_PAGO = :ID_FORMA_PAGO,'#10' I' + 'ALMACEN = :ID_ALMACEN,'#10' ID_FORMA_PAGO = :ID_FORMA_PAGO,'#10' I' +
'MPORTE_NETO = :IMPORTE_NETO,'#10' IMPORTE_PORTE = :IMPORTE_PORTE,' + 'MPORTE_NETO = :IMPORTE_NETO,'#10' IMPORTE_PORTE = :IMPORTE_PORTE,' +
#10' ID_TIENDA = :ID_TIENDA'#10' WHERE'#10' (ID = :OLD_ID);'#10 #10' ID_TIENDA = :ID_TIENDA,'#10' REF_PEDIDOS_PROV = :REF_PEDIDOS' +
'_PROV,'#10' ID_ALBARAN = :ID_ALBARAN'#10' WHERE'#10' (ID = :OLD_ID);'#10
StatementType = stSQL StatementType = stSQL
ColumnMappings = <> ColumnMappings = <>
end> end>

View File

@ -1,5 +1,6 @@
inherited fEditorAlbaranDevProveedor: TfEditorAlbaranDevProveedor inherited fEditorAlbaranDevProveedor: TfEditorAlbaranDevProveedor
Caption = 'Nueva orden de devoluci'#243'n de proveedor' Caption = 'Nueva orden de devoluci'#243'n de proveedor'
ExplicitWidth = 781
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
@ -121,17 +122,33 @@ inherited fEditorAlbaranDevProveedor: TfEditorAlbaranDevProveedor
57A308AABE386478304D80AFBF710C4F5121CA43E698041AB8669DA7F7EB63EA 57A308AABE386478304D80AFBF710C4F5121CA43E698041AB8669DA7F7EB63EA
6F8A0E921A675CAE400000000049454E44AE426082} 6F8A0E921A675CAE400000000049454E44AE426082}
end end
inherited lblDesbloquear: TcxLabel
AnchorX = 685
AnchorY = 14
end
end end
inherited pgPaginas: TPageControl inherited pgPaginas: TPageControl
ExplicitTop = 111
ExplicitHeight = 438
inherited pagGeneral: TTabSheet
ExplicitHeight = 410
end
inherited pagContenido: TTabSheet
inherited frViewDetallesAlbaranProveedor1: TfrViewDetallesAlbaranProveedor
inherited cxGrid: TcxGrid
ExplicitHeight = 338
end
end
end
inherited pagInicidencias: TTabSheet inherited pagInicidencias: TTabSheet
ExplicitLeft = 4
ExplicitTop = 24
ExplicitWidth = 751
ExplicitHeight = 410
inherited frViewIncidenciasCli: TfrViewIncidencias inherited frViewIncidenciasCli: TfrViewIncidencias
ExplicitHeight = 410
inherited GroupBox1: TGroupBox inherited GroupBox1: TGroupBox
inherited eIncidencias: TcxDBMemo ExplicitHeight = 382
ExplicitWidth = 726
ExplicitHeight = 332
Height = 332
Width = 726
end
end end
end end
end end
@ -139,14 +156,32 @@ inherited fEditorAlbaranDevProveedor: TfEditorAlbaranDevProveedor
inherited frViewTotales1: TfrViewTotales inherited frViewTotales1: TfrViewTotales
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
LookAndFeel = dxLayoutOfficeLookAndFeel1 LookAndFeel = dxLayoutOfficeLookAndFeel1
inherited Bevel3: TBevel
Height = 30
ExplicitHeight = 30
end
inherited Bevel4: TBevel
Width = 21
ExplicitWidth = 21
end
inherited Bevel1: TBevel
Width = 332
ExplicitWidth = 332
end
inherited ImporteDto: TcxDBCurrencyEdit inherited ImporteDto: TcxDBCurrencyEdit
Style.IsFontAssigned = True Style.IsFontAssigned = True
ExplicitWidth = 93
Width = 93
end end
inherited ImporteIVA: TcxDBCurrencyEdit inherited ImporteIVA: TcxDBCurrencyEdit
Style.IsFontAssigned = True Style.IsFontAssigned = True
ExplicitWidth = 137
Width = 137
end end
inherited ImporteTotal: TcxDBCurrencyEdit inherited ImporteTotal: TcxDBCurrencyEdit
Style.IsFontAssigned = True Style.IsFontAssigned = True
ExplicitWidth = 137
Width = 137
end end
inherited edtDescuento: TcxDBSpinEdit inherited edtDescuento: TcxDBSpinEdit
Style.IsFontAssigned = True Style.IsFontAssigned = True
@ -156,18 +191,58 @@ inherited fEditorAlbaranDevProveedor: TfEditorAlbaranDevProveedor
end end
inherited ImporteBase: TcxDBCurrencyEdit inherited ImporteBase: TcxDBCurrencyEdit
Style.IsFontAssigned = True Style.IsFontAssigned = True
ExplicitWidth = 92
Width = 92
end end
inherited edtRE: TcxDBSpinEdit inherited edtRE: TcxDBSpinEdit
Style.IsFontAssigned = True Style.IsFontAssigned = True
end end
inherited edtIRPF: TcxDBSpinEdit
Style.IsFontAssigned = True
end
inherited ImporteRE: TcxDBCurrencyEdit inherited ImporteRE: TcxDBCurrencyEdit
Style.IsFontAssigned = True Style.IsFontAssigned = True
ExplicitWidth = 56
Width = 56
end
inherited ImporteIRPF: TcxDBCurrencyEdit
Style.IsFontAssigned = True
ExplicitWidth = 56
Width = 56
end end
inherited eImporteNeto: TcxDBCurrencyEdit inherited eImporteNeto: TcxDBCurrencyEdit
Style.IsFontAssigned = True Style.IsFontAssigned = True
ExplicitWidth = 147
Width = 147
end end
inherited ePorte: TcxDBCurrencyEdit inherited ePorte: TcxDBCurrencyEdit
Style.IsFontAssigned = True Style.IsFontAssigned = True
ExplicitWidth = 147
Width = 147
end
inherited eIVA: TcxDBLookupComboBox
ExplicitWidth = 81
Width = 81
end
inherited cbRecargoEquivalencia: TcxDBCheckBox
ExplicitWidth = 219
Width = 219
end
inherited edtRetencion: TcxDBSpinEdit
Style.IsFontAssigned = True
end
inherited edtImporteRetencion: TcxDBCurrencyEdit
Style.IsFontAssigned = True
ExplicitWidth = 342
Width = 342
end
inherited edtFechaRetencion: TcxDBDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 333
Width = 333
end end
inherited dxLayoutControl1Group_Root: TdxLayoutGroup inherited dxLayoutControl1Group_Root: TdxLayoutGroup
inherited dxLayoutControl1Group1: TdxLayoutGroup inherited dxLayoutControl1Group1: TdxLayoutGroup
@ -178,4 +253,11 @@ inherited fEditorAlbaranDevProveedor: TfEditorAlbaranDevProveedor
end end
end end
end end
inherited PnlComentario: TPanel
ExplicitTop = 78
inherited lbComentario: TLabel
Width = 755
Height = 25
end
end
end end

View File

@ -11,7 +11,7 @@ uses
uViewDetallesArticulos, uViewDetallesAlbaranProveedor, uCustomView, uViewBase, uViewDetallesArticulos, uViewDetallesAlbaranProveedor, uCustomView, uViewBase,
uViewAlbaranProveedor, TBX, TB2Item, TB2Dock, TB2Toolbar, pngimage, ExtCtrls, uViewAlbaranProveedor, TBX, TB2Item, TB2Dock, TB2Toolbar, pngimage, ExtCtrls,
JvExControls, JvComponent, JvNavigationPane, uIEditorAlbaranDevProveedor, JvExControls, JvComponent, JvNavigationPane, uIEditorAlbaranDevProveedor,
uDAInterfaces, StdCtrls; uDAInterfaces, StdCtrls, cxContainer, cxEdit, cxLabel, cxControls;
type type
TfEditorAlbaranDevProveedor = class(TfEditorAlbaranProveedor, IEditorAlbaranDevProveedor) TfEditorAlbaranDevProveedor = class(TfEditorAlbaranProveedor, IEditorAlbaranDevProveedor)
@ -31,7 +31,7 @@ implementation
{$R *.dfm} {$R *.dfm}
uses uses
cxControls, uDataTableUtils, uDialogUtils, uViewAlbaranDevProveedor; uDataTableUtils, uDialogUtils, uViewAlbaranDevProveedor;
{ TfEditorAlbaranDevProveedor } { TfEditorAlbaranDevProveedor }

View File

@ -12,7 +12,6 @@ inherited fEditorAlbaranProveedor: TfEditorAlbaranProveedor
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
Width = 765 Width = 765
Caption = 'Nuevo albar'#225'n de proveedor' Caption = 'Nuevo albar'#225'n de proveedor'
ExplicitTop = 52
ExplicitWidth = 765 ExplicitWidth = 765
inherited Image1: TImage inherited Image1: TImage
Left = 738 Left = 738
@ -125,12 +124,18 @@ inherited fEditorAlbaranProveedor: TfEditorAlbaranProveedor
0000000049454E44AE426082} 0000000049454E44AE426082}
ExplicitLeft = 735 ExplicitLeft = 735
end end
inherited lblDesbloquear: TcxLabel
Left = 640
ExplicitLeft = 640
AnchorX = 685
AnchorY = 14
end
end end
inherited TBXDock: TTBXDock inherited TBXDock: TTBXDock
Width = 765 Width = 765
ExplicitWidth = 765 ExplicitWidth = 765
inherited tbxMain: TTBXToolbar inherited tbxMain: TTBXToolbar
ExplicitWidth = 551 ExplicitWidth = 518
inherited TBXItem2: TTBXItem inherited TBXItem2: TTBXItem
Visible = False Visible = False
end end
@ -157,7 +162,7 @@ inherited fEditorAlbaranProveedor: TfEditorAlbaranProveedor
end end
inherited pgPaginas: TPageControl inherited pgPaginas: TPageControl
Width = 759 Width = 759
Height = 437 Height = 438
TabOrder = 1 TabOrder = 1
OnChanging = pgPaginasChanging OnChanging = pgPaginasChanging
ExplicitTop = 112 ExplicitTop = 112
@ -176,7 +181,7 @@ inherited fEditorAlbaranProveedor: TfEditorAlbaranProveedor
Left = 0 Left = 0
Top = 0 Top = 0
Width = 751 Width = 751
Height = 409 Height = 410
Align = alClient Align = alClient
BiDiMode = bdLeftToRight BiDiMode = bdLeftToRight
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
@ -189,50 +194,14 @@ inherited fEditorAlbaranProveedor: TfEditorAlbaranProveedor
TabOrder = 0 TabOrder = 0
ReadOnly = False ReadOnly = False
ExplicitWidth = 751 ExplicitWidth = 751
ExplicitHeight = 409 ExplicitHeight = 410
inherited ToolBar1: TToolBar inherited ToolBar1: TToolBar
Width = 751 Width = 751
ExplicitWidth = 751 ExplicitWidth = 751
inherited UpDown1: TUpDown
Left = 239
ExplicitLeft = 239
end
inherited ToolButton13: TToolButton
Left = 256
ExplicitLeft = 256
end
inherited ToolButton6: TToolButton
Left = 264
ExplicitLeft = 264
end
inherited ToolButton7: TToolButton
Left = 298
ExplicitLeft = 298
end
inherited ToolButton8: TToolButton
Left = 332
ExplicitLeft = 332
end
inherited ToolButton12: TToolButton
Left = 366
ExplicitLeft = 366
end
inherited ToolButton9: TToolButton
Left = 374
ExplicitLeft = 374
end
inherited ToolButton10: TToolButton
Left = 408
ExplicitLeft = 408
end
inherited ToolButton11: TToolButton
Left = 442
ExplicitLeft = 442
end
end end
inherited cxGrid: TcxGrid inherited cxGrid: TcxGrid
Width = 751 Width = 751
Height = 337 Height = 338
ExplicitWidth = 751 ExplicitWidth = 751
ExplicitHeight = 337 ExplicitHeight = 337
inherited cxGridView: TcxGridDBTableView inherited cxGridView: TcxGridDBTableView
@ -245,7 +214,7 @@ inherited fEditorAlbaranProveedor: TfEditorAlbaranProveedor
Width = 751 Width = 751
ExplicitWidth = 751 ExplicitWidth = 751
inherited TBXToolbar1: TTBXToolbar inherited TBXToolbar1: TTBXToolbar
ExplicitWidth = 622 ExplicitWidth = 597
end end
end end
end end
@ -253,11 +222,15 @@ inherited fEditorAlbaranProveedor: TfEditorAlbaranProveedor
object pagInicidencias: TTabSheet object pagInicidencias: TTabSheet
Caption = 'Incidencias' Caption = 'Incidencias'
ImageIndex = 2 ImageIndex = 2
ExplicitLeft = 0
ExplicitTop = 0
ExplicitWidth = 0
ExplicitHeight = 0
inline frViewIncidenciasCli: TfrViewIncidencias inline frViewIncidenciasCli: TfrViewIncidencias
Left = 0 Left = 0
Top = 0 Top = 0
Width = 751 Width = 751
Height = 409 Height = 410
Align = alClient Align = alClient
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText Font.Color = clWindowText
@ -278,13 +251,13 @@ inherited fEditorAlbaranProveedor: TfEditorAlbaranProveedor
end end
inherited GroupBox1: TGroupBox inherited GroupBox1: TGroupBox
Width = 751 Width = 751
Height = 381 Height = 382
ExplicitWidth = 751 ExplicitWidth = 751
ExplicitHeight = 381 ExplicitHeight = 381
inherited eIncidencias: TcxDBMemo inherited eIncidencias: TcxDBMemo
ExplicitWidth = 747 ExplicitWidth = 747
ExplicitHeight = 364 ExplicitHeight = 365
Height = 364 Height = 365
Width = 747 Width = 747
end end
end end
@ -552,10 +525,6 @@ inherited fEditorAlbaranProveedor: TfEditorAlbaranProveedor
Width = 765 Width = 765
ExplicitTop = 79 ExplicitTop = 79
ExplicitWidth = 765 ExplicitWidth = 765
inherited lbComentario: TLabel
Width = 755
Height = 25
end
end end
inherited EditorActionList: TActionList [9] inherited EditorActionList: TActionList [9]
inherited actConfPagina: TAction inherited actConfPagina: TAction

View File

@ -15,7 +15,7 @@ uses
uViewDetallesBase, uViewDetallesAlbaranProveedor, uViewDetallesBase, uViewDetallesAlbaranProveedor,
dxLayoutLookAndFeels, JvExComCtrls, JvStatusBar, uViewTotales, dxLayoutLookAndFeels, JvExComCtrls, JvStatusBar, uViewTotales,
uIEditorAlbaranProveedor, uBizAlbaranesProveedor, uViewAlbaranProveedor, uIEditorAlbaranProveedor, uBizAlbaranesProveedor, uViewAlbaranProveedor,
uViewDetallesDTO, uViewDetallesArticulos, uDAInterfaces; uViewDetallesDTO, uViewDetallesArticulos, uDAInterfaces, cxLabel;
type type
TfEditorAlbaranProveedor = class(TfEditorDBItem, IEditorAlbaranProveedor) TfEditorAlbaranProveedor = class(TfEditorDBItem, IEditorAlbaranProveedor)

View File

@ -1,8 +1,7 @@
inherited fEditorAlbaranesDevProveedor: TfEditorAlbaranesDevProveedor inherited fEditorAlbaranesDevProveedor: TfEditorAlbaranesDevProveedor
Caption = 'Lista de '#243'rdenes de devoluci'#243'n de proveedor' Caption = 'Lista de '#243'rdenes de devoluci'#243'n de proveedor'
ClientWidth = 872 ClientWidth = 872
ExplicitWidth = 880 ExplicitWidth = 888
ExplicitHeight = 478
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
@ -133,14 +132,12 @@ inherited fEditorAlbaranesDevProveedor: TfEditorAlbaranesDevProveedor
inherited TBXDock: TTBXDock inherited TBXDock: TTBXDock
Width = 872 Width = 872
ExplicitWidth = 872 ExplicitWidth = 872
inherited tbxMain: TTBXToolbar
ExplicitWidth = 632
end
inherited tbxMenu: TTBXToolbar inherited tbxMenu: TTBXToolbar
ExplicitWidth = 872 ExplicitWidth = 872
end end
inherited TBXTMain2: TTBXToolbar inherited TBXTMain2: TTBXToolbar
ExplicitWidth = 112 Visible = False
ExplicitWidth = 36
end end
end end
inherited StatusBar: TJvStatusBar inherited StatusBar: TJvStatusBar
@ -154,6 +151,10 @@ inherited fEditorAlbaranesDevProveedor: TfEditorAlbaranesDevProveedor
inherited actGenerarFactura: TAction inherited actGenerarFactura: TAction
Caption = 'Generar abono' Caption = 'Generar abono'
end end
inherited actGenerarDevolucion: TAction
Enabled = False
Visible = False
end
end end
inherited SmallImages: TPngImageList inherited SmallImages: TPngImageList
PngImages = < PngImages = <

View File

@ -1,16 +1,17 @@
inherited fEditorAlbaranesProveedor: TfEditorAlbaranesProveedor inherited fEditorAlbaranesProveedor: TfEditorAlbaranesProveedor
Caption = 'Lista de albaranes de proveedor' Caption = 'Lista de albaranes de proveedor'
ClientWidth = 606 ClientHeight = 674
ExplicitWidth = 614 ClientWidth = 1051
ExplicitHeight = 240 ExplicitWidth = 1067
ExplicitHeight = 712
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
Width = 606 Width = 1051
Caption = 'Lista de albaranes de proveedor' Caption = 'Lista de albaranes de proveedor'
ExplicitWidth = 606 ExplicitWidth = 1051
inherited Image1: TImage inherited Image1: TImage
Left = 579 Left = 1024
Picture.Data = { Picture.Data = {
0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001800 0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001800
0000180806000000E0773DF80000000970485973000017120000171201679FD2 0000180806000000E0773DF80000000970485973000017120000171201679FD2
@ -122,13 +123,13 @@ inherited fEditorAlbaranesProveedor: TfEditorAlbaranesProveedor
end end
end end
inherited TBXDock: TTBXDock inherited TBXDock: TTBXDock
Width = 606 Width = 1051
ExplicitWidth = 606 ExplicitWidth = 1051
inherited tbxMain: TTBXToolbar inherited tbxMain: TTBXToolbar
ExplicitWidth = 606 ExplicitWidth = 688
end end
inherited tbxFiltro: TTBXToolbar inherited tbxFiltro: TTBXToolbar
ExplicitWidth = 379 ExplicitWidth = 362
inherited lblAno: TTBXLabelItem inherited lblAno: TTBXLabelItem
Visible = True Visible = True
end end
@ -140,20 +141,32 @@ inherited fEditorAlbaranesProveedor: TfEditorAlbaranesProveedor
end end
end end
inherited tbxMenu: TTBXToolbar inherited tbxMenu: TTBXToolbar
ExplicitWidth = 606 ExplicitWidth = 1051
end end
inherited TBXTMain2: TTBXToolbar inherited TBXTMain2: TTBXToolbar
Left = 379 Left = 362
ExplicitLeft = 379 Visible = True
ExplicitLeft = 362
ExplicitWidth = 143
object TBXItem39: TTBXItem object TBXItem39: TTBXItem
Action = actGenerarFactura Action = actGenerarFactura
DisplayMode = nbdmImageAndText DisplayMode = nbdmImageAndText
end end
object TBXItem38: TTBXItem
Action = actAsignarFactura
DisplayMode = nbdmImageAndText
end
object TBXItem40: TTBXItem
Action = actGenerarDevolucion
DisplayMode = nbdmImageAndText
end
end end
end end
inherited StatusBar: TJvStatusBar inherited StatusBar: TJvStatusBar
Width = 606 Top = 655
ExplicitWidth = 606 Width = 1051
ExplicitTop = 655
ExplicitWidth = 1051
end end
inherited EditorActionList: TActionList inherited EditorActionList: TActionList
inherited actNuevo: TAction inherited actNuevo: TAction
@ -184,6 +197,23 @@ inherited fEditorAlbaranesProveedor: TfEditorAlbaranesProveedor
Caption = 'Enviar por e-mail' Caption = 'Enviar por e-mail'
ImageIndex = 24 ImageIndex = 24
end end
object actAsignarFactura: TAction
Caption = 'Asignar factura'
Enabled = False
ImageIndex = 23
Visible = False
OnExecute = actAsignarFacturaExecute
OnUpdate = actAsignarFacturaUpdate
end
object actGenerarDevolucion: TAction
Caption = 'Generar devoluci'#243'n'
Hint =
'Generar una orden de devoluci'#243'n a partir del albar'#225'n seleccionad' +
'o'
ImageIndex = 23
OnExecute = actGenerarDevolucionExecute
OnUpdate = actGenerarDevolucionUpdate
end
end end
inherited SmallImages: TPngImageList inherited SmallImages: TPngImageList
PngImages = < PngImages = <

View File

@ -23,11 +23,19 @@ type
TBXItem39: TTBXItem; TBXItem39: TTBXItem;
JsListaAlbaranesNoEliminados: TJSDialog; JsListaAlbaranesNoEliminados: TJSDialog;
ActEnviarEMail: TAction; ActEnviarEMail: TAction;
actAsignarFactura: TAction;
TBXItem38: TTBXItem;
actGenerarDevolucion: TAction;
TBXItem40: TTBXItem;
procedure FormShow(Sender: TObject); procedure FormShow(Sender: TObject);
procedure actGenerarFacturaExecute(Sender: TObject); procedure actGenerarFacturaExecute(Sender: TObject);
procedure actGenerarFacturaUpdate(Sender: TObject); procedure actGenerarFacturaUpdate(Sender: TObject);
procedure actEliminarUpdate(Sender: TObject); procedure actEliminarUpdate(Sender: TObject);
procedure OnListaAnosChange(Sender: TObject; const Text: string); procedure OnListaAnosChange(Sender: TObject; const Text: string);
procedure actAsignarFacturaExecute(Sender: TObject);
procedure actAsignarFacturaUpdate(Sender: TObject);
procedure actGenerarDevolucionExecute(Sender: TObject);
procedure actGenerarDevolucionUpdate(Sender: TObject);
protected protected
FAlbaranes: IBizAlbaranProveedor; FAlbaranes: IBizAlbaranProveedor;
@ -62,9 +70,9 @@ type
implementation implementation
uses uses
uDataModuleAlbaranesProveedor, uDataModuleUsuarios, uFactuGES_App, uDataModuleAlbaranesProveedor, uDataModuleUsuarios, uFactuGES_App, cxControls,
// uGenerarFacturasProvAlbProvUtils, // uGenerarFacturasProvAlbProvUtils,
uGenerarAlbaranesProvUtils, uGenerarAlbaranesProvUtils, uStringsUtils,
uEditorBase, schAlbaranesProveedorClient_Intf, uEditorBase, schAlbaranesProveedorClient_Intf,
uGridUtils, uDBSelectionListUtils; uGridUtils, uDBSelectionListUtils;
@ -73,6 +81,21 @@ uses
{ {
*************************** TfEditorAlbaranesProveedor *************************** *************************** TfEditorAlbaranesProveedor ***************************
} }
procedure TfEditorAlbaranesProveedor.actAsignarFacturaExecute(Sender: TObject);
begin
inherited;
//
end;
procedure TfEditorAlbaranesProveedor.actAsignarFacturaUpdate(Sender: TObject);
begin
inherited;
(Sender as TAction).Enabled := HayDatos
and not (ViewGrid.NumSeleccionados > 1)
and (Albaranes.REF_FACTURA = '')
and ViewGrid.esSeleccionCeldaDatos;
end;
procedure TfEditorAlbaranesProveedor.actEliminarUpdate(Sender: TObject); procedure TfEditorAlbaranesProveedor.actEliminarUpdate(Sender: TObject);
begin begin
inherited; inherited;
@ -80,6 +103,40 @@ begin
(Sender as TAction).Enabled := not (FAlbaranes.ID_FACTURA > 0) (Sender as TAction).Enabled := not (FAlbaranes.ID_FACTURA > 0)
end; end;
procedure TfEditorAlbaranesProveedor.actGenerarDevolucionExecute(Sender: TObject);
var
ADevolucion : IBizAlbaranProveedor;
ACausa: String;
begin
inherited;
ShowHourglassCursor;
Application.ProcessMessages;
try
ADevolucion := FController.GenerarDevolucion(FAlbaranes);
if Assigned(ADevolucion) then
FController.Ver(ADevolucion);
if not EsCadenaVacia(ADevolucion.REFERENCIA) then
begin
ACausa := 'Devolución de material en orden de devolución ' + ADevolucion.REFERENCIA;
FController.AsignarIncidenciaDevolucion(FAlbaranes, ACausa);
end;
// RefrescarInterno;
finally
HideHourglassCursor;
Application.ProcessMessages;
end;
end;
procedure TfEditorAlbaranesProveedor.actGenerarDevolucionUpdate(Sender: TObject);
begin
inherited;
(Sender as TAction).Enabled := HayDatos
and not (ViewGrid.NumSeleccionados > 1)
and ViewGrid.esSeleccionCeldaDatos;
end;
procedure TfEditorAlbaranesProveedor.actGenerarFacturaExecute(Sender: TObject); procedure TfEditorAlbaranesProveedor.actGenerarFacturaExecute(Sender: TObject);
begin begin
{ {
@ -204,13 +261,13 @@ begin
end; end;
procedure TfEditorAlbaranesProveedor.ImprimirInterno; procedure TfEditorAlbaranesProveedor.ImprimirInterno;
{var var
Respuesta : Integer; Respuesta : Integer;
AAlbaranes: IBizAlbaranProveedor; AAlbaranes: IBizAlbaranProveedor;
AllItems: Boolean; AllItems: Boolean;
}
begin begin
{
AAlbaranes := Nil; AAlbaranes := Nil;
AllItems := False; AllItems := False;
@ -244,7 +301,6 @@ begin
end; end;
end; end;
end; end;
}
end; end;
function TfEditorAlbaranesProveedor.GetAlbaranes: IBizAlbaranProveedor; function TfEditorAlbaranesProveedor.GetAlbaranes: IBizAlbaranProveedor;

View File

@ -1,23 +1,29 @@
inherited frViewAlbaranDevProveedor: TfrViewAlbaranDevProveedor inherited frViewAlbaranDevProveedor: TfrViewAlbaranDevProveedor
Height = 349 Width = 799
ExplicitHeight = 349 Height = 623
ExplicitWidth = 799
ExplicitHeight = 623
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Height = 349 Width = 799
ExplicitHeight = 349 Height = 623
ExplicitWidth = 799
ExplicitHeight = 623
inherited edtFechaAlbaran: TcxDBDateEdit inherited edtFechaAlbaran: TcxDBDateEdit
Left = 114 Left = 124
ExplicitLeft = 114 ExplicitLeft = 124
ExplicitWidth = 119 ExplicitWidth = 119
Width = 119 Width = 119
end end
inherited eReferencia: TcxDBTextEdit inherited eReferencia: TcxDBTextEdit
Left = 114 Left = 124
ExplicitLeft = 114 ExplicitLeft = 124
ExplicitWidth = 143 ExplicitWidth = 143
Width = 143 Width = 143
end end
inherited frViewProveedorAlbaran: TfrViewDatosYSeleccionProveedor inherited frViewProveedorAlbaran: TfrViewDatosYSeleccionProveedor
Left = 386
Width = 350 Width = 350
ExplicitLeft = 386
ExplicitWidth = 350 ExplicitWidth = 350
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 350 Width = 350
@ -41,6 +47,14 @@ inherited frViewAlbaranDevProveedor: TfrViewAlbaranDevProveedor
ExplicitWidth = 327 ExplicitWidth = 327
Width = 327 Width = 327
end end
inherited edtCodigoPostal: TcxDBTextEdit
Left = 299
ExplicitLeft = 299
end
inherited Button3: TBitBtn
Left = 183
ExplicitLeft = 183
end
end end
end end
inherited frViewDireccionEntregaAlbaranProv1: TfrViewDireccionEntregaAlbaranProv inherited frViewDireccionEntregaAlbaranProv1: TfrViewDireccionEntregaAlbaranProv
@ -64,10 +78,10 @@ inherited frViewAlbaranDevProveedor: TfrViewAlbaranDevProveedor
Width = 425 Width = 425
end end
inherited bModificar: TBitBtn inherited bModificar: TBitBtn
Left = 136 Left = 196
Top = 109 Top = 251
ExplicitLeft = 136 ExplicitLeft = 196
ExplicitTop = 109 ExplicitTop = 251
end end
inherited txtDireccion: TStaticText inherited txtDireccion: TStaticText
Width = 549 Width = 549
@ -92,26 +106,31 @@ inherited frViewAlbaranDevProveedor: TfrViewAlbaranDevProveedor
end end
end end
inherited cbFormaPago: TcxDBLookupComboBox inherited cbFormaPago: TcxDBLookupComboBox
Left = 114 Left = 124
ExplicitLeft = 114 ExplicitLeft = 124
ExplicitWidth = 90 ExplicitWidth = 90
Width = 90 Width = 90
end end
inherited eReferenciaPedidoCli: TcxTextEdit inherited bFormasPago: TButton
Left = 114 Left = 224
ExplicitLeft = 114 ExplicitLeft = 224
ExplicitWidth = 69
Width = 69
end end
inherited eRefFactura: TcxDBTextEdit inherited eRefFactura: TcxDBTextEdit
Left = 124
DataBinding.DataField = 'REF_ALB_PROV'
ExplicitLeft = 124
ExplicitWidth = 262 ExplicitWidth = 262
Width = 262 Width = 262
end end
inherited eReferenciaProveedor: TcxDBTextEdit inherited eReferenciaProveedor: TcxDBTextEdit
Left = 124
ExplicitLeft = 124
ExplicitWidth = 262 ExplicitWidth = 262
Width = 262 Width = 262
end end
inherited eReferenciaFacturaProveedor: TcxDBTextEdit inherited eReferenciaFacturaProveedor: TcxDBTextEdit
Left = 124
ExplicitLeft = 124
ExplicitWidth = 262 ExplicitWidth = 262
Width = 262 Width = 262
end end
@ -127,8 +146,10 @@ inherited frViewAlbaranDevProveedor: TfrViewAlbaranDevProveedor
end end
end end
inherited frViewObservaciones1: TfrViewObservaciones inherited frViewObservaciones1: TfrViewObservaciones
Left = 386
Width = 521 Width = 521
Height = 228 Height = 228
ExplicitLeft = 386
ExplicitWidth = 521 ExplicitWidth = 521
ExplicitHeight = 228 ExplicitHeight = 228
inherited memObservaciones: TcxDBMemo inherited memObservaciones: TcxDBMemo
@ -137,6 +158,14 @@ inherited frViewAlbaranDevProveedor: TfrViewAlbaranDevProveedor
Width = 521 Width = 521
end end
end end
inherited eReferenciaPedidosProv: TcxDBTextEdit
Left = 124
DataBinding.DataField = 'REF_PED_PROV_PADRE'
Enabled = False
ExplicitLeft = 124
ExplicitWidth = 201
Width = 201
end
inherited dxLayoutControl1Group_Root: TdxLayoutGroup inherited dxLayoutControl1Group_Root: TdxLayoutGroup
inherited dxLayoutControl1Group6: TdxLayoutGroup inherited dxLayoutControl1Group6: TdxLayoutGroup
inherited dxLayoutControl1Group1: TdxLayoutGroup inherited dxLayoutControl1Group1: TdxLayoutGroup
@ -144,11 +173,10 @@ inherited frViewAlbaranDevProveedor: TfrViewAlbaranDevProveedor
inherited dxLayoutControl1Item2: TdxLayoutItem inherited dxLayoutControl1Item2: TdxLayoutItem
Caption = 'Fecha de orden:' Caption = 'Fecha de orden:'
end end
inherited dxLayoutControl1Group5: TdxLayoutGroup
Visible = False
end
inherited dxLayoutControl1Item10: TdxLayoutItem inherited dxLayoutControl1Item10: TdxLayoutItem
Caption = 'Ref. abono:' Caption = 'Ref. albar'#225'n origen:'
Enabled = True
Visible = True
end end
inherited dxLayoutControl1Item12: TdxLayoutItem inherited dxLayoutControl1Item12: TdxLayoutItem
Caption = 'Ref. abono prov.:' Caption = 'Ref. abono prov.:'

View File

@ -19,7 +19,7 @@ inherited frViewAlbaranProveedor: TfrViewAlbaranProveedor
723 723
585) 585)
object edtFechaAlbaran: TcxDBDateEdit object edtFechaAlbaran: TcxDBDateEdit
Left = 119 Left = 121
Top = 82 Top = 82
Anchors = [akLeft, akTop, akRight] Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'FECHA_ALBARAN' DataBinding.DataField = 'FECHA_ALBARAN'
@ -41,7 +41,7 @@ inherited frViewAlbaranProveedor: TfrViewAlbaranProveedor
Width = 119 Width = 119
end end
object eReferencia: TcxDBTextEdit object eReferencia: TcxDBTextEdit
Left = 119 Left = 121
Top = 28 Top = 28
Anchors = [akLeft, akTop, akRight] Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'REFERENCIA' DataBinding.DataField = 'REFERENCIA'
@ -73,7 +73,7 @@ inherited frViewAlbaranProveedor: TfrViewAlbaranProveedor
Font.Name = 'Tahoma' Font.Name = 'Tahoma'
Font.Style = [] Font.Style = []
ParentFont = False ParentFont = False
TabOrder = 11 TabOrder = 10
ReadOnly = False ReadOnly = False
ExplicitLeft = 350 ExplicitLeft = 350
ExplicitTop = 28 ExplicitTop = 28
@ -113,12 +113,6 @@ inherited frViewAlbaranProveedor: TfrViewAlbaranProveedor
end end
inherited ActionList1: TActionList inherited ActionList1: TActionList
Top = 72 Top = 72
inherited actElegirContacto: TAction
OnUpdate = frViewProveedorAlbaranactElegirContactoUpdate
end
inherited actAnadirContacto: TAction
OnUpdate = frViewProveedorAlbaranactAnadirContactoUpdate
end
end end
inherited PngImageList: TPngImageList inherited PngImageList: TPngImageList
Top = 72 Top = 72
@ -126,7 +120,7 @@ inherited frViewAlbaranProveedor: TfrViewAlbaranProveedor
end end
inline frViewDireccionEntregaAlbaranProv1: TfrViewDireccionEntregaAlbaranProv inline frViewDireccionEntregaAlbaranProv1: TfrViewDireccionEntregaAlbaranProv
Left = 22 Left = 22
Top = 317 Top = 315
Width = 445 Width = 445
Height = 175 Height = 175
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
@ -135,10 +129,10 @@ inherited frViewAlbaranProveedor: TfrViewAlbaranProveedor
Font.Name = 'Tahoma' Font.Name = 'Tahoma'
Font.Style = [] Font.Style = []
ParentFont = False ParentFont = False
TabOrder = 10 TabOrder = 9
ReadOnly = False ReadOnly = False
ExplicitLeft = 22 ExplicitLeft = 22
ExplicitTop = 317 ExplicitTop = 315
ExplicitWidth = 445 ExplicitWidth = 445
ExplicitHeight = 175 ExplicitHeight = 175
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
@ -160,9 +154,9 @@ inherited frViewAlbaranProveedor: TfrViewAlbaranProveedor
end end
inherited bModificar: TBitBtn inherited bModificar: TBitBtn
Left = 160 Left = 160
Top = 211 Top = 213
ExplicitLeft = 160 ExplicitLeft = 160
ExplicitTop = 211 ExplicitTop = 213
end end
inherited txtDireccion: TStaticText inherited txtDireccion: TStaticText
Height = 110 Height = 110
@ -175,8 +169,8 @@ inherited frViewAlbaranProveedor: TfrViewAlbaranProveedor
end end
end end
object cbFormaPago: TcxDBLookupComboBox object cbFormaPago: TcxDBLookupComboBox
Left = 119 Left = 121
Top = 192 Top = 190
DataBinding.DataField = 'ID_FORMA_PAGO' DataBinding.DataField = 'ID_FORMA_PAGO'
DataBinding.DataSource = DADataSource DataBinding.DataSource = DADataSource
Properties.DropDownListStyle = lsFixedList Properties.DropDownListStyle = lsFixedList
@ -202,52 +196,21 @@ inherited frViewAlbaranProveedor: TfrViewAlbaranProveedor
StyleFocused.LookAndFeel.NativeStyle = True StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 7 TabOrder = 6
Width = 90 Width = 90
end end
object bFormasPago: TButton object bFormasPago: TButton
Left = 188 Left = 188
Top = 192 Top = 190
Width = 132 Width = 132
Height = 21 Height = 21
Caption = 'Ver las formas de pago...' Caption = 'Ver las formas de pago...'
TabOrder = 8 TabOrder = 7
OnClick = bFormasPagoClick OnClick = bFormasPagoClick
end end
object eReferenciaPedidoCli: TcxTextEdit
Left = 119
Top = 109
Anchors = [akLeft, akTop, akRight]
Enabled = False
Properties.ReadOnly = False
Properties.ValidateOnEnter = True
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.Color = clWindow
Style.HotTrack = False
Style.LookAndFeel.Kind = lfStandard
Style.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.Kind = lfStandard
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.TextColor = clWindowText
StyleFocused.LookAndFeel.Kind = lfStandard
StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 3
Width = 122
end
object Button1: TButton
Left = 188
Top = 109
Width = 132
Height = 23
Action = actVerPedido
TabOrder = 4
end
object eRefFactura: TcxDBTextEdit object eRefFactura: TcxDBTextEdit
Left = 119 Left = 121
Top = 138 Top = 136
Anchors = [akLeft, akTop, akRight] Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'REF_FACTURA' DataBinding.DataField = 'REF_FACTURA'
DataBinding.DataSource = DADataSource DataBinding.DataSource = DADataSource
@ -268,11 +231,11 @@ inherited frViewAlbaranProveedor: TfrViewAlbaranProveedor
StyleFocused.LookAndFeel.NativeStyle = True StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 5 TabOrder = 4
Width = 216 Width = 216
end end
object eReferenciaProveedor: TcxDBTextEdit object eReferenciaProveedor: TcxDBTextEdit
Left = 119 Left = 121
Top = 55 Top = 55
Anchors = [akLeft, akTop, akRight] Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'REFERENCIA_PROVEEDOR' DataBinding.DataField = 'REFERENCIA_PROVEEDOR'
@ -293,11 +256,12 @@ inherited frViewAlbaranProveedor: TfrViewAlbaranProveedor
Width = 170 Width = 170
end end
object eReferenciaFacturaProveedor: TcxDBTextEdit object eReferenciaFacturaProveedor: TcxDBTextEdit
Left = 119 Left = 121
Top = 165 Top = 163
Anchors = [akLeft, akTop, akRight] Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'REF_FACTURA_PROV' DataBinding.DataField = 'REF_FACTURA_PROV'
DataBinding.DataSource = DADataSource DataBinding.DataSource = DADataSource
Enabled = False
Properties.ReadOnly = False Properties.ReadOnly = False
Properties.ValidateOnEnter = True Properties.ValidateOnEnter = True
Style.BorderColor = clWindowFrame Style.BorderColor = clWindowFrame
@ -314,12 +278,12 @@ inherited frViewAlbaranProveedor: TfrViewAlbaranProveedor
StyleFocused.LookAndFeel.NativeStyle = True StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.Kind = lfStandard StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 6 TabOrder = 5
Width = 170 Width = 170
end end
inline frViewTienda1: TfrViewTienda inline frViewTienda1: TfrViewTienda
Left = 22 Left = 22
Top = 249 Top = 247
Width = 366 Width = 366
Height = 32 Height = 32
Enabled = False Enabled = False
@ -329,10 +293,10 @@ inherited frViewAlbaranProveedor: TfrViewAlbaranProveedor
Font.Name = 'Tahoma' Font.Name = 'Tahoma'
Font.Style = [] Font.Style = []
ParentFont = False ParentFont = False
TabOrder = 9 TabOrder = 8
ReadOnly = False ReadOnly = False
ExplicitLeft = 22 ExplicitLeft = 22
ExplicitTop = 249 ExplicitTop = 247
ExplicitWidth = 366 ExplicitWidth = 366
ExplicitHeight = 32 ExplicitHeight = 32
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
@ -355,7 +319,7 @@ inherited frViewAlbaranProveedor: TfrViewAlbaranProveedor
Font.Name = 'Tahoma' Font.Name = 'Tahoma'
Font.Style = [] Font.Style = []
ParentFont = False ParentFont = False
TabOrder = 12 TabOrder = 11
ReadOnly = False ReadOnly = False
ExplicitLeft = 350 ExplicitLeft = 350
ExplicitTop = 276 ExplicitTop = 276
@ -367,6 +331,31 @@ inherited frViewAlbaranProveedor: TfrViewAlbaranProveedor
Height = 228 Height = 228
end end
end end
object eReferenciaPedidosProv: TcxDBTextEdit
Left = 121
Top = 109
Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'REF_PEDIDOS_PROV'
DataBinding.DataSource = DADataSource
Properties.ReadOnly = False
Properties.ValidateOnEnter = True
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.Color = clWindow
Style.HotTrack = False
Style.LookAndFeel.Kind = lfStandard
Style.LookAndFeel.NativeStyle = True
StyleDisabled.Color = clMenuBar
StyleDisabled.LookAndFeel.Kind = lfStandard
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.TextColor = clWindowText
StyleFocused.LookAndFeel.Kind = lfStandard
StyleFocused.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 3
Width = 201
end
object dxLayoutControl1Group_Root: TdxLayoutGroup object dxLayoutControl1Group_Root: TdxLayoutGroup
ShowCaption = False ShowCaption = False
Hidden = True Hidden = True
@ -397,33 +386,22 @@ inherited frViewAlbaranProveedor: TfrViewAlbaranProveedor
Control = edtFechaAlbaran Control = edtFechaAlbaran
ControlOptions.ShowBorder = False ControlOptions.ShowBorder = False
end end
object dxLayoutControl1Group5: TdxLayoutGroup object dxLayoutControl1Item14: TdxLayoutItem
ShowCaption = False Caption = 'Ref. pedidos prov.:'
Hidden = True Control = eReferenciaPedidosProv
LayoutDirection = ldHorizontal ControlOptions.ShowBorder = False
ShowBorder = False
object dxLayoutControl1Item8: TdxLayoutItem
AutoAligns = [aaVertical]
AlignHorz = ahClient
Caption = 'Ref. del pedido:'
Control = eReferenciaPedidoCli
ControlOptions.ShowBorder = False
end
object dxLayoutControl1Item9: TdxLayoutItem
AutoAligns = [aaVertical]
AlignHorz = ahRight
ShowCaption = False
Control = Button1
ControlOptions.ShowBorder = False
end
end end
object dxLayoutControl1Item10: TdxLayoutItem object dxLayoutControl1Item10: TdxLayoutItem
Caption = 'Ref. factura:' Caption = 'Ref. factura:'
Enabled = False
Visible = False
Control = eRefFactura Control = eRefFactura
ControlOptions.ShowBorder = False ControlOptions.ShowBorder = False
end end
object dxLayoutControl1Item12: TdxLayoutItem object dxLayoutControl1Item12: TdxLayoutItem
Caption = 'Ref. factura prov.:' Caption = 'Ref. factura prov.:'
Enabled = False
Visible = False
Control = eReferenciaFacturaProveedor Control = eReferenciaFacturaProveedor
ControlOptions.ShowBorder = False ControlOptions.ShowBorder = False
end end
@ -515,11 +493,6 @@ inherited frViewAlbaranProveedor: TfrViewAlbaranProveedor
OnExecute = actElegirDireccionExecute OnExecute = actElegirDireccionExecute
OnUpdate = actElegirDireccionUpdate OnUpdate = actElegirDireccionUpdate
end end
object actVerPedido: TAction
Caption = 'Ver el pedido de prov...'
OnExecute = actVerPedidoExecute
OnUpdate = actVerPedidoUpdate
end
end end
object dsFormaPago: TDADataSource object dsFormaPago: TDADataSource
Left = 40 Left = 40

View File

@ -57,12 +57,6 @@ type
bFormasPago: TButton; bFormasPago: TButton;
dxLayoutControl1Group4: TdxLayoutGroup; dxLayoutControl1Group4: TdxLayoutGroup;
dsFormaPago: TDADataSource; dsFormaPago: TDADataSource;
dxLayoutControl1Item8: TdxLayoutItem;
eReferenciaPedidoCli: TcxTextEdit;
dxLayoutControl1Item9: TdxLayoutItem;
Button1: TButton;
dxLayoutControl1Group5: TdxLayoutGroup;
actVerPedido: TAction;
dxLayoutControl1Item10: TdxLayoutItem; dxLayoutControl1Item10: TdxLayoutItem;
eRefFactura: TcxDBTextEdit; eRefFactura: TcxDBTextEdit;
dxLayoutControl1Item11: TdxLayoutItem; dxLayoutControl1Item11: TdxLayoutItem;
@ -74,18 +68,15 @@ type
dxLayoutControl1Group9: TdxLayoutGroup; dxLayoutControl1Group9: TdxLayoutGroup;
frViewObservaciones1: TfrViewObservaciones; frViewObservaciones1: TfrViewObservaciones;
dxLayoutControl1Item6: TdxLayoutItem; dxLayoutControl1Item6: TdxLayoutItem;
dxLayoutControl1Item14: TdxLayoutItem;
eReferenciaPedidosProv: TcxDBTextEdit;
procedure CustomViewCreate(Sender: TObject); procedure CustomViewCreate(Sender: TObject);
procedure CustomViewDestroy(Sender: TObject); procedure CustomViewDestroy(Sender: TObject);
procedure actElegirDireccionExecute(Sender: TObject); procedure actElegirDireccionExecute(Sender: TObject);
procedure frViewProveedorAlbaranButton1Click(Sender: TObject); procedure frViewProveedorAlbaranButton1Click(Sender: TObject);
procedure frViewProveedorAlbaranButton2Click(Sender: TObject); procedure frViewProveedorAlbaranButton2Click(Sender: TObject);
procedure bFormasPagoClick(Sender: TObject); procedure bFormasPagoClick(Sender: TObject);
procedure actVerPedidoExecute(Sender: TObject);
procedure frViewProveedorAlbaranactElegirContactoUpdate(Sender: TObject);
procedure frViewProveedorAlbaranactAnadirContactoUpdate(Sender: TObject);
procedure actElegirDireccionUpdate(Sender: TObject); procedure actElegirDireccionUpdate(Sender: TObject);
procedure actVerPedidoUpdate(Sender: TObject);
protected protected
FAlbaran : IBizAlbaranProveedor; FAlbaran : IBizAlbaranProveedor;
@ -93,7 +84,6 @@ type
FViewProveedorAlbaran : TfrViewDatosYSeleccionProveedor; FViewProveedorAlbaran : TfrViewDatosYSeleccionProveedor;
FFormasPago : IBizFormaPago; FFormasPago : IBizFormaPago;
FFormasPagoController : IFormasPagoController; FFormasPagoController : IFormasPagoController;
FPedidoAsociado : IBizPedidoProveedor;
FPedidoController : IPedidosProveedorController; FPedidoController : IPedidosProveedorController;
function GetAlbaran: IBizAlbaranProveedor; function GetAlbaran: IBizAlbaranProveedor;
@ -158,19 +148,6 @@ begin
} }
end; end;
procedure TfrViewAlbaranProveedor.actVerPedidoExecute(Sender: TObject);
begin
inherited;
FPedidoController.Ver(FPedidoAsociado);
end;
procedure TfrViewAlbaranProveedor.actVerPedidoUpdate(Sender: TObject);
begin
inherited;
if (Sender as TAction).Enabled then
(Sender as TAction).Enabled := (Albaran.REF_PED_PROVEEDOR <> '')
end;
procedure TfrViewAlbaranProveedor.bFormasPagoClick(Sender: TObject); procedure TfrViewAlbaranProveedor.bFormasPagoClick(Sender: TObject);
begin begin
inherited; inherited;
@ -181,8 +158,6 @@ end;
procedure TfrViewAlbaranProveedor.CustomViewCreate(Sender: TObject); procedure TfrViewAlbaranProveedor.CustomViewCreate(Sender: TObject);
begin begin
inherited; inherited;
FPedidoAsociado := NIL;
FPedidoController := TPedidosProveedorController.Create;
FFormasPago := Nil; FFormasPago := Nil;
FFormasPagoController := TFormasPagoController.Create; FFormasPagoController := TFormasPagoController.Create;
FViewProveedorAlbaran := frViewProveedorAlbaran; FViewProveedorAlbaran := frViewProveedorAlbaran;
@ -193,26 +168,12 @@ end;
procedure TfrViewAlbaranProveedor.CustomViewDestroy(Sender: TObject); procedure TfrViewAlbaranProveedor.CustomViewDestroy(Sender: TObject);
begin begin
FPedidoController := NIL;
FFormasPago := Nil; FFormasPago := Nil;
FFormasPagoController := NIL; FFormasPagoController := NIL;
FPedidoAsociado := NIL;
FViewProveedorAlbaran := Nil; FViewProveedorAlbaran := Nil;
inherited; inherited;
end; end;
procedure TfrViewAlbaranProveedor.frViewProveedorAlbaranactAnadirContactoUpdate(Sender: TObject);
begin
if (Sender as TAction).Enabled then
(Sender as TAction).Enabled := not Assigned(FPedidoAsociado);
end;
procedure TfrViewAlbaranProveedor.frViewProveedorAlbaranactElegirContactoUpdate(Sender: TObject);
begin
if (Sender as TAction).Enabled then
(Sender as TAction).Enabled := (not Assigned(FPedidoAsociado));
end;
procedure TfrViewAlbaranProveedor.frViewProveedorAlbaranButton1Click(Sender: TObject); procedure TfrViewAlbaranProveedor.frViewProveedorAlbaranButton1Click(Sender: TObject);
begin begin
if Assigned(Albaran) and Assigned(Albaran.Proveedor) and if Assigned(Albaran) and Assigned(Albaran.Proveedor) and
@ -265,23 +226,7 @@ begin
frViewProveedorAlbaran.Proveedor := FAlbaran.Proveedor; frViewProveedorAlbaran.Proveedor := FAlbaran.Proveedor;
frViewDireccionEntregaAlbaranProv1.AlbaranProveedor := FAlbaran; frViewDireccionEntregaAlbaranProv1.AlbaranProveedor := FAlbaran;
eReferenciaPedidoCli.Enabled := False;
eRefFactura.Enabled := False; eRefFactura.Enabled := False;
FPedidoAsociado := NIL;
if (FAlbaran.ID_PEDIDO > 0) then
begin
FPedidoAsociado := FPedidoController.Buscar(FAlbaran.ID_PEDIDO);
if Assigned(FPedidoAsociado) then
begin
FPedidoAsociado.DataTable.Active := True;
eReferenciaPedidoCli.Text := FPedidoAsociado.REFERENCIA
end
else
eReferenciaPedidoCli.Text := '';
end
else
eReferenciaPedidoCli.Text := 'No hay pedido asociado';
end end
else begin else begin
DADataSource.DataTable := NIL; DADataSource.DataTable := NIL;

View File

@ -2,8 +2,12 @@ inherited frViewAlbaranesDevProveedor: TfrViewAlbaranesDevProveedor
OnCreate = CustomViewCreate OnCreate = CustomViewCreate
inherited cxGrid: TcxGrid inherited cxGrid: TcxGrid
inherited cxGridView: TcxGridDBTableView inherited cxGridView: TcxGridDBTableView
inherited cxGridViewREF_FACTURA: TcxGridDBColumn object cxGridViewALBARAN_PADRE: TcxGridDBColumn [7]
Caption = 'Ref. abono' Caption = 'Ref. albar'#225'n origen'
DataBinding.FieldName = 'REF_ALB_PROV'
end
inherited cxGridViewREF_PEDIDOS_PROV: TcxGridDBColumn
DataBinding.FieldName = 'REF_PED_PROV_PADRE'
end end
end end
end end
@ -11,21 +15,36 @@ inherited frViewAlbaranesDevProveedor: TfrViewAlbaranesDevProveedor
inherited TBXDockablePanel1: TTBXDockablePanel inherited TBXDockablePanel1: TTBXDockablePanel
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
inherited txtFiltroTodo: TcxTextEdit inherited txtFiltroTodo: TcxTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 273 ExplicitWidth = 273
Width = 273 Width = 273
end end
inherited edtFechaIniFiltro: TcxDateEdit inherited edtFechaIniFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 121 ExplicitWidth = 121
Width = 121 Width = 121
end end
inherited edtFechaFinFiltro: TcxDateEdit inherited edtFechaFinFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 217 ExplicitWidth = 217
Width = 217 Width = 217
end end
end inherited txtFiltroTodo2: TcxTextEdit
inherited TBXAlignmentPanel1: TTBXAlignmentPanel Style.LookAndFeel.SkinName = ''
inherited tbxBotones: TTBXToolbar StyleDisabled.LookAndFeel.SkinName = ''
Width = 586 StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 250
Width = 250
end end
end end
end end

View File

@ -78,8 +78,9 @@ inherited frViewAlbaranesProveedor: TfrViewAlbaranesProveedor
DataBinding.FieldName = 'NOMBRE' DataBinding.FieldName = 'NOMBRE'
Width = 160 Width = 160
end end
object cxGridViewREF_PED_PROVEEDOR: TcxGridDBColumn object cxGridViewREF_PEDIDOS_PROV: TcxGridDBColumn
DataBinding.FieldName = 'REF_PED_PROVEEDOR' Caption = 'Pedidos asociados'
DataBinding.FieldName = 'REF_PEDIDOS_PROV'
Visible = False Visible = False
Width = 25 Width = 25
end end
@ -112,20 +113,6 @@ inherited frViewAlbaranesProveedor: TfrViewAlbaranesProveedor
DataBinding.FieldName = 'TELEFONO' DataBinding.FieldName = 'TELEFONO'
Visible = False Visible = False
end end
object cxGridViewREF_FACTURA: TcxGridDBColumn
Caption = 'Ref. factura'
DataBinding.FieldName = 'REF_FACTURA'
PropertiesClassName = 'TcxTextEditProperties'
Properties.Alignment.Horz = taRightJustify
HeaderAlignmentHorz = taRightJustify
Width = 24
end
object cxGridViewREF_FACTURA_PROV: TcxGridDBColumn
DataBinding.FieldName = 'REF_FACTURA_PROV'
PropertiesClassName = 'TcxTextEditProperties'
Properties.Alignment.Horz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewIMPORTE_TOTAL: TcxGridDBColumn object cxGridViewIMPORTE_TOTAL: TcxGridDBColumn
Caption = 'Importe total' Caption = 'Importe total'
DataBinding.FieldName = 'IMPORTE_TOTAL' DataBinding.FieldName = 'IMPORTE_TOTAL'
@ -174,6 +161,16 @@ inherited frViewAlbaranesProveedor: TfrViewAlbaranesProveedor
ExplicitWidth = 217 ExplicitWidth = 217
Width = 217 Width = 217
end end
inherited txtFiltroTodo2: TcxTextEdit
Left = 354
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 354
ExplicitWidth = 250
Width = 250
end
end end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 596 Width = 596

View File

@ -35,8 +35,7 @@ type
cxGridViewPERSONA_CONTACTO: TcxGridDBColumn; cxGridViewPERSONA_CONTACTO: TcxGridDBColumn;
cxGridViewTELEFONO: TcxGridDBColumn; cxGridViewTELEFONO: TcxGridDBColumn;
cxGridViewNOMBRE_ALMACEN: TcxGridDBColumn; cxGridViewNOMBRE_ALMACEN: TcxGridDBColumn;
cxGridViewREF_PED_PROVEEDOR: TcxGridDBColumn; cxGridViewREF_PEDIDOS_PROV: TcxGridDBColumn;
cxGridViewREF_FACTURA: TcxGridDBColumn;
cxGridViewIMPORTE_TOTAL: TcxGridDBColumn; cxGridViewIMPORTE_TOTAL: TcxGridDBColumn;
actProveedor: TAction; actProveedor: TAction;
actAlmacen: TAction; actAlmacen: TAction;
@ -45,7 +44,6 @@ type
TBXItem3: TTBXItem; TBXItem3: TTBXItem;
TBXSeparatorItem2: TTBXSeparatorItem; TBXSeparatorItem2: TTBXSeparatorItem;
cxGridViewREFERENCIA_PROVEEDOR: TcxGridDBColumn; cxGridViewREFERENCIA_PROVEEDOR: TcxGridDBColumn;
cxGridViewREF_FACTURA_PROV: TcxGridDBColumn;
cxGridViewTIENDA: TcxGridDBColumn; cxGridViewTIENDA: TcxGridDBColumn;
procedure cxGridActiveTabChanged(Sender: TcxCustomGrid; ALevel: procedure cxGridActiveTabChanged(Sender: TcxCustomGrid; ALevel:
TcxGridLevel); TcxGridLevel);

View File

@ -41,7 +41,29 @@
<Borland.Personality>Delphi.Personality</Borland.Personality> <Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType> <Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject> <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">True</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><Source><Source Name="MainSource">Almacenes_model.dpk</Source></Source><Excluded_Packages> <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><Source><Source Name="MainSource">Almacenes_model.dpk</Source></Source><Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\vclhie100.bpl">Internet Explorer Hosting Support Package</Excluded_Packages> <Excluded_Packages Name="$(BDS)\bin\vclhie100.bpl">Internet Explorer Hosting Support Package</Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\applet100.bpl">CodeGear Control Panel Applet Package</Excluded_Packages> <Excluded_Packages Name="$(BDS)\bin\applet100.bpl">CodeGear Control Panel Applet Package</Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dclwebsnap100.bpl">CodeGear WebSnap Components</Excluded_Packages> <Excluded_Packages Name="$(BDS)\bin\dclwebsnap100.bpl">CodeGear WebSnap Components</Excluded_Packages>
@ -60,8 +82,11 @@
<DelphiCompile Include="Almacenes_model.dpk"> <DelphiCompile Include="Almacenes_model.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\..\..\GUIBase\ApplicationBasecontainsuBizAlmacenesin.dcp" /> <DCCReference Include="..\..\..\Cliente\ApplicationBase.dcp" />
<DCCReference Include="..\..\..\GUIBase\Base.dcp" /> <DCCReference Include="..\..\..\Cliente\Base.dcp" />
<DCCReference Include="Data\uIDataModuleAlmacenes.pas" />
<DCCReference Include="schAlmacenesClient_Intf.pas" />
<DCCReference Include="uBizAlmacenes.pas" />
</ItemGroup> </ItemGroup>
</Project> </Project>
<!-- EurekaLog First Line <!-- EurekaLog First Line

View File

@ -55,12 +55,12 @@
<DelphiCompile Include="Articulos_controller.dpk"> <DelphiCompile Include="Articulos_controller.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\..\..\..\Resources\Iconos\Cuentas\24x24\Articulos_data.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Articulos_data.dcp" />
<DCCReference Include="..\..\..\..\Resources\Iconos\Cuentas\24x24\Articulos_model.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Articulos_model.dcp" />
<DCCReference Include="..\..\..\..\Resources\Iconos\Cuentas\24x24\Contactos_controller.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Contactos_controller.dcp" />
<DCCReference Include="..\..\..\..\Resources\Iconos\Cuentas\24x24\Contactos_model.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Contactos_model.dcp" />
<DCCReference Include="..\..\..\..\Resources\Iconos\Cuentas\24x24\GUIBase.dcp" /> <DCCReference Include="$(SystemRoot)\system32\GUIBase.dcp" />
<DCCReference Include="..\..\..\..\Resources\Iconos\Cuentas\24x24\Tarifas_controller.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Tarifas_controller.dcp" />
<DCCReference Include="uArticulosController.pas" /> <DCCReference Include="uArticulosController.pas" />
<DCCReference Include="uControllerDetallesArticulos.pas" /> <DCCReference Include="uControllerDetallesArticulos.pas" />
<DCCReference Include="View\uIEditorArticulo.pas" /> <DCCReference Include="View\uIEditorArticulo.pas" />

View File

@ -19,6 +19,8 @@ type
function BuscarTodos(AProveedor: IBizProveedor): IBizArticulo; overload; function BuscarTodos(AProveedor: IBizProveedor): IBizArticulo; overload;
function BuscarReferencia(const Ref: String; AClienteID: Integer): IBizArticulo; function BuscarReferencia(const Ref: String; AClienteID: Integer): IBizArticulo;
function BuscarReferenciaProveedor(const Ref: String; AClienteID: Integer): IBizArticulo; function BuscarReferenciaProveedor(const Ref: String; AClienteID: Integer): IBizArticulo;
procedure BuscarPedidoConArticulo(AArticulo : IBizArticulo);
procedure Ver(AArticulo : IBizArticulo); procedure Ver(AArticulo : IBizArticulo);
procedure VerTodos(AArticulos: IBizArticulo); procedure VerTodos(AArticulos: IBizArticulo);
function Nuevo : IBizArticulo; function Nuevo : IBizArticulo;
@ -97,6 +99,8 @@ type
function BuscarTodos(AProveedor: IBizProveedor): IBizArticulo; overload; function BuscarTodos(AProveedor: IBizProveedor): IBizArticulo; overload;
function BuscarReferencia(const Ref: String; AClienteID: Integer = -1): IBizArticulo; virtual; function BuscarReferencia(const Ref: String; AClienteID: Integer = -1): IBizArticulo; virtual;
function BuscarReferenciaProveedor(const Ref: String; AClienteID: Integer): IBizArticulo; virtual; function BuscarReferenciaProveedor(const Ref: String; AClienteID: Integer): IBizArticulo; virtual;
procedure BuscarPedidoConArticulo(AArticulo : IBizArticulo);
function Nuevo : IBizArticulo; virtual; function Nuevo : IBizArticulo; virtual;
procedure Ver(AArticulo : IBizArticulo); virtual; procedure Ver(AArticulo : IBizArticulo); virtual;
procedure VerTodos(AArticulos: IBizArticulo); virtual; procedure VerTodos(AArticulos: IBizArticulo); virtual;
@ -126,8 +130,8 @@ type
implementation implementation
uses uses
cxControls, DB, uEditorRegistryUtils, schArticulosClient_Intf, uFactuGES_App, umodulecontroller, uPlugins_Intf, cxControls, DB, uEditorRegistryUtils, schArticulosClient_Intf, uFactuGES_App,
uIEditorArticulos, uIEditorArticulo, uIEditorElegirArticulos, uIEditorArticulos, uIEditorArticulo, uIEditorElegirArticulos, uBizIdiomas,
uDataModuleArticulos, uDataModuleUsuarios, uDAInterfaces, uTarifasController, uDataModuleArticulos, uDataModuleUsuarios, uDAInterfaces, uTarifasController,
uDataTableUtils, uDateUtils, uROTypes, DateUtils, Controls, Windows; uDataTableUtils, uDateUtils, uROTypes, DateUtils, Controls, Windows;
@ -136,6 +140,14 @@ uses
procedure TArticulosController.Anadir(AArticulo: IBizArticulo); procedure TArticulosController.Anadir(AArticulo: IBizArticulo);
begin begin
AArticulo.Insert; AArticulo.Insert;
//Se pone aqui en lugar de IniciarValoresArticuloNuevo de la clase de negocio BizArticulos, porque al duplicar entidad produce un efecto lateral que no permite poner la tabla target en modo insert
//y falla el duplicar por contra sale el mensaje ha habido cambios aunque no hayas metido nada
AArticulo.Idiomas.Insert;
AArticulo.Idiomas.DataTable.FieldByName(fld_Articulos_IdiomasID_IDIOMA).AsInteger := CTE_ID_IDIOMA_EN;
AArticulo.Idiomas.Insert;
AArticulo.Idiomas.DataTable.FieldByName(fld_Articulos_IdiomasID_IDIOMA).AsInteger := CTE_ID_IDIOMA_FR;
AArticulo.Idiomas.Insert;
end; end;
procedure TArticulosController.AnadirProveedor(AArticulo: IBizArticulo); procedure TArticulosController.AnadirProveedor(AArticulo: IBizArticulo);
@ -236,6 +248,28 @@ begin
end; end;
end; end;
procedure TArticulosController.BuscarPedidoConArticulo(AArticulo: IBizArticulo);
var
AModule : TModuleController;
APlugin : IMCPedidosProveedor;
begin
if not Assigned(AArticulo) then
raise Exception.Create ('Articulo no asignado (BuscarPedidoConArticulo)');
if not AArticulo.DataTable.Active then
AArticulo.DataTable.Active := True;
AModule := AppFactuGES.GetModule(MODULENAME_PEDIDOS_PROVEEDOR);
if Assigned(AModule) then
try
if Supports(AModule, IMCPedidosProveedor, APlugin) then
//Se busca de forma exacta
APlugin.VerPedidosConArticulo(AArticulo.ID, AArticulo.DESCRIPCION);
finally
APlugin := NIL;
end;
end;
function TArticulosController.BuscarReferencia(const Ref: String; AClienteID: Integer = -1): IBizArticulo; function TArticulosController.BuscarReferencia(const Ref: String; AClienteID: Integer = -1): IBizArticulo;
var var
Condicion: TDAWhereExpression; Condicion: TDAWhereExpression;
@ -402,7 +436,7 @@ begin
begin begin
begin begin
//El artículo libre comisionable no podrá cambiarse de valor //El artículo libre comisionable no podrá cambiarse de valor
if (AArticulos.ID <> CTE_ART_COMISIONABLE_MODIFICABLE) then if (AArticulos.REFERENCIA_PROV <> CTE_ART_COMISIONABLE_MODIFICABLE) then
begin begin
Edit; Edit;
AArticulos.COMISIONABLE := Valor; AArticulos.COMISIONABLE := Valor;
@ -463,12 +497,14 @@ begin
ShowHourglassCursor; ShowHourglassCursor;
try try
DuplicarRegistros(AArticulo.DataTable, Result.DataTable, mdrActual); DuplicarRegistros(AArticulo.DataTable, Result.DataTable, mdrActual);
DuplicarRegistros(AArticulo.Proveedores.DataTable, Result.Proveedores.DataTable, mdrTodos);
DuplicarRegistros(AArticulo.Idiomas.DataTable, Result.Idiomas.DataTable, mdrTodos);
// Hay que dejar algunos campos como si fuera un artículo nuevo // Hay que dejar algunos campos como si fuera un artículo nuevo
Result.Edit; Result.Edit;
with Result do with Result do
begin begin
ID_EMPRESA := AppFactuGES.EmpresaActiva.ID; ID_EMPRESA := AppFactuGES.EmpresaActiva.ID;
USUARIO := AppFactuGES.UsuarioActivo.UserName; USUARIO := AppFactuGES.UsuarioActivo.UserName;
end; end;
@ -647,7 +683,7 @@ begin
if not Assigned(AArticulo) then if not Assigned(AArticulo) then
raise Exception.Create ('Articulo no asignado (EsEliminable)'); raise Exception.Create ('Articulo no asignado (EsEliminable)');
Result := AArticulo.ID <> CTE_ART_COMISIONABLE_MODIFICABLE; Result := AArticulo.REFERENCIA_PROV <> CTE_ART_COMISIONABLE_MODIFICABLE;
end; end;
function TArticulosController.EsModificable(AArticulo: IBizArticulo): Boolean; function TArticulosController.EsModificable(AArticulo: IBizArticulo): Boolean;
@ -655,7 +691,7 @@ begin
if not Assigned(AArticulo) then if not Assigned(AArticulo) then
raise Exception.Create ('Articulo no asignado (EsModificable)'); raise Exception.Create ('Articulo no asignado (EsModificable)');
Result := AArticulo.ID <> CTE_ART_COMISIONABLE_MODIFICABLE; Result := AArticulo.REFERENCIA_PROV <> CTE_ART_COMISIONABLE_MODIFICABLE;
end; end;
procedure TArticulosController.RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable); procedure TArticulosController.RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable);
@ -789,6 +825,15 @@ begin
// FiltrarEmpresa(AArticulo); // FiltrarEmpresa(AArticulo);
AArticulo.DataTable.Active := True; AArticulo.DataTable.Active := True;
AArticulo.Insert; AArticulo.Insert;
//Se pone aqui en lugar de IniciarValoresArticuloNuevo de la clase de negocio BizArticulos, porque al duplicar entidad produce un efecto lateral que no permite poner la tabla target en modo insert
//y falla el duplicar por contra sale el mensaje ha habido cambios aunque no hayas metido nada
AArticulo.Idiomas.Insert;
AArticulo.Idiomas.DataTable.FieldByName(fld_Articulos_IdiomasID_IDIOMA).AsInteger := CTE_ID_IDIOMA_EN;
AArticulo.Idiomas.Insert;
AArticulo.Idiomas.DataTable.FieldByName(fld_Articulos_IdiomasID_IDIOMA).AsInteger := CTE_ID_IDIOMA_FR;
AArticulo.Idiomas.Insert;
Result := AArticulo; Result := AArticulo;
end; end;

View File

@ -54,7 +54,7 @@
<DelphiCompile Include="Articulos_data.dpk"> <DelphiCompile Include="Articulos_data.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\..\..\..\Resources\Iconos\Cuentas\24x24\Articulos_model.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Articulos_model.dcp" />
<DCCReference Include="uDataModuleArticulos.pas"> <DCCReference Include="uDataModuleArticulos.pas">
<Form>DataModuleArticulos</Form> <Form>DataModuleArticulos</Form>
</DCCReference> </DCCReference>

View File

@ -55,22 +55,22 @@
<DelphiCompile Include="Articulos_model.dpk"> <DelphiCompile Include="Articulos_model.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="adortl.dcp" /> <DCCReference Include="$(SystemRoot)\system32\adortl.dcp" />
<DCCReference Include="ApplicationBase.dcp" /> <DCCReference Include="$(SystemRoot)\system32\ApplicationBase.dcp" />
<DCCReference Include="Base.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Base.dcp" />
<DCCReference Include="DataAbstract_Core_D11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\DataAbstract_Core_D11.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dbrtl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\dsnap.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\vcldb.dcp" />
<DCCReference Include="Data\uIDataModuleArticulos.pas" /> <DCCReference Include="Data\uIDataModuleArticulos.pas" />
<DCCReference Include="dbrtl.dcp" />
<DCCReference Include="dsnap.dcp" />
<DCCReference Include="RemObjects_Core_D11.dcp" />
<DCCReference Include="rtl.dcp" />
<DCCReference Include="schArticulosClient_Intf.pas" /> <DCCReference Include="schArticulosClient_Intf.pas" />
<DCCReference Include="schArticulosServer_Intf.pas" /> <DCCReference Include="schArticulosServer_Intf.pas" />
<DCCReference Include="uBizArticulos.pas" /> <DCCReference Include="uBizArticulos.pas" />
<DCCReference Include="uBizArticulosIdiomas.pas" /> <DCCReference Include="uBizArticulosIdiomas.pas" />
<DCCReference Include="uBizArticulosProveedores.pas" /> <DCCReference Include="uBizArticulosProveedores.pas" />
<DCCReference Include="vcl.dcp" />
<DCCReference Include="vcldb.dcp" />
</ItemGroup> </ItemGroup>
</Project> </Project>
<!-- EurekaLog First Line <!-- EurekaLog First Line

View File

@ -9,7 +9,7 @@ uses
const const
BIZ_CLIENT_ARTICULO = 'Client.Articulo'; BIZ_CLIENT_ARTICULO = 'Client.Articulo';
CTE_TARIFA_COMPRAS = 'Compras'; CTE_TARIFA_COMPRAS = 'Compras';
CTE_ART_COMISIONABLE_MODIFICABLE = 1; CTE_ART_COMISIONABLE_MODIFICABLE = 'TXT_LIBRE_COMI';
type type
IBizArticulo = interface(IArticulos) IBizArticulo = interface(IArticulos)

View File

@ -55,37 +55,37 @@
<DelphiCompile Include="Articulos_view.dpk"> <DelphiCompile Include="Articulos_view.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\..\Pedidos a proveedor\adortl.dcp" /> <DCCReference Include="$(SystemRoot)\system32\adortl.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Articulos_controller.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Articulos_controller.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Articulos_model.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Articulos_model.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Contactos_view.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Contactos_view.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\cxDataD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxDataD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\cxEditorsD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxEditorsD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\cxExportD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxExportD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\cxExtEditorsD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxExtEditorsD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\cxGridD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxGridD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\cxLibraryD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxLibraryD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\cxPageControlD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxPageControlD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\DataAbstract_Core_D11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\DataAbstract_Core_D11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\dbrtl.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dbrtl.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\dsnap.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dsnap.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\dxCoreD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxCoreD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\dxGDIPlusD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxGDIPlusD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\dxThemeD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxThemeD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Familias_controller.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Familias_controller.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\GUIBase.dcp" /> <DCCReference Include="$(SystemRoot)\system32\GUIBase.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\PngComponentsD10.dcp" /> <DCCReference Include="$(SystemRoot)\system32\PngComponentsD10.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\PNG_D10.dcp" /> <DCCReference Include="$(SystemRoot)\system32\PNG_D10.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\RemObjects_Core_D11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\RemObjects_Core_D11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\rtl.dcp" /> <DCCReference Include="$(SystemRoot)\system32\rtl.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\SubFamilias_controller.dcp" /> <DCCReference Include="$(SystemRoot)\system32\SubFamilias_controller.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Tarifas_controller.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Tarifas_controller.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\UnidadesMedida_controller.dcp" /> <DCCReference Include="$(SystemRoot)\system32\UnidadesMedida_controller.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\vcl.dcp" /> <DCCReference Include="$(SystemRoot)\system32\vcl.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\vclactnband.dcp" /> <DCCReference Include="$(SystemRoot)\system32\vclactnband.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\vcldb.dcp" /> <DCCReference Include="$(SystemRoot)\system32\vcldb.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\vcljpg.dcp" /> <DCCReference Include="$(SystemRoot)\system32\vcljpg.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\vclx.dcp" /> <DCCReference Include="$(SystemRoot)\system32\vclx.dcp" />
<DCCReference Include="uArticulosViewRegister.pas" /> <DCCReference Include="uArticulosViewRegister.pas" />
<DCCReference Include="uEditorArticulo.pas"> <DCCReference Include="uEditorArticulo.pas">
<Form>fEditorArticulo</Form> <Form>fEditorArticulo</Form>

View File

@ -8,14 +8,13 @@ inherited fEditorArticulo: TfEditorArticulo
ClientWidth = 957 ClientWidth = 957
Scaled = False Scaled = False
OnClose = CustomEditorClose OnClose = CustomEditorClose
ExplicitWidth = 965 ExplicitWidth = 973
ExplicitHeight = 707 ExplicitHeight = 707
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
Width = 957 Width = 957
Caption = 'Art'#237'culo' Caption = 'Art'#237'culo'
ExplicitTop = 52
ExplicitWidth = 957 ExplicitWidth = 957
inherited Image1: TImage inherited Image1: TImage
Left = 930 Left = 930
@ -35,12 +34,18 @@ inherited fEditorArticulo: TfEditorArticulo
4495BD38333E3DC0F0B71000FEC966E74A55381F0000000049454E44AE426082} 4495BD38333E3DC0F0B71000FEC966E74A55381F0000000049454E44AE426082}
ExplicitLeft = 607 ExplicitLeft = 607
end end
inherited lblDesbloquear: TcxLabel
Left = 832
ExplicitLeft = 832
AnchorX = 877
AnchorY = 14
end
end end
inherited TBXDock: TTBXDock inherited TBXDock: TTBXDock
Width = 957 Width = 957
ExplicitWidth = 957 ExplicitWidth = 957
inherited tbxMain: TTBXToolbar inherited tbxMain: TTBXToolbar
ExplicitWidth = 543 ExplicitWidth = 511
inherited TBXItem2: TTBXItem inherited TBXItem2: TTBXItem
Visible = False Visible = False
end end
@ -112,11 +117,10 @@ inherited fEditorArticulo: TfEditorArticulo
end end
inherited pgPaginas: TPageControl inherited pgPaginas: TPageControl
Width = 951 Width = 951
Height = 535 Height = 536
ActivePage = pagPrecios ActivePage = pagPrecios
ExplicitTop = 112
ExplicitWidth = 951 ExplicitWidth = 951
ExplicitHeight = 535 ExplicitHeight = 536
inherited pagGeneral: TTabSheet inherited pagGeneral: TTabSheet
ExplicitLeft = 4 ExplicitLeft = 4
ExplicitTop = 24 ExplicitTop = 24
@ -130,7 +134,7 @@ inherited fEditorArticulo: TfEditorArticulo
Left = 0 Left = 0
Top = 0 Top = 0
Width = 943 Width = 943
Height = 507 Height = 508
Align = alClient Align = alClient
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText Font.Color = clWindowText
@ -141,27 +145,39 @@ inherited fEditorArticulo: TfEditorArticulo
TabOrder = 0 TabOrder = 0
ReadOnly = False ReadOnly = False
ExplicitWidth = 943 ExplicitWidth = 943
ExplicitHeight = 507 ExplicitHeight = 508
inherited cxGrid: TcxGrid inherited cxGrid: TcxGrid
Width = 943 Width = 943
Height = 482 Height = 483
ExplicitWidth = 943 ExplicitWidth = 943
ExplicitHeight = 482 ExplicitHeight = 483
end end
inherited ToolBar1: TToolBar inherited ToolBar1: TToolBar
Width = 943 Width = 943
ButtonWidth = 126
ExplicitWidth = 943 ExplicitWidth = 943
inherited ToolButton1: TToolButton inherited ToolButton1: TToolButton
ExplicitWidth = 62 ExplicitWidth = 66
end end
inherited ToolButton4: TToolButton inherited ToolButton4: TToolButton
ExplicitWidth = 74 Left = 66
ExplicitWidth = 82
end
inherited ToolButton5: TToolButton
Left = 148
end end
inherited ToolButton2: TToolButton inherited ToolButton2: TToolButton
ExplicitWidth = 67 Left = 156
ExplicitLeft = 156
ExplicitWidth = 74
end
inherited ToolButton6: TToolButton
Left = 230
end end
inherited ToolButton7: TToolButton inherited ToolButton7: TToolButton
ExplicitWidth = 117 Left = 238
ExplicitLeft = 238
ExplicitWidth = 130
end end
end end
end end
@ -169,7 +185,6 @@ inherited fEditorArticulo: TfEditorArticulo
end end
inherited PnlComentario: TPanel inherited PnlComentario: TPanel
Width = 957 Width = 957
ExplicitTop = 79
ExplicitWidth = 957 ExplicitWidth = 957
inherited lbComentario: TLabel inherited lbComentario: TLabel
Width = 947 Width = 947

View File

@ -14,7 +14,7 @@ uses
uViewArticulos, uIEditorArticulo, uArticulosController, JvExComCtrls, uViewArticulos, uIEditorArticulo, uArticulosController, JvExComCtrls,
JvStatusBar, dxLayoutLookAndFeels, uDAInterfaces, uViewDetallesGenerico, JvStatusBar, dxLayoutLookAndFeels, uDAInterfaces, uViewDetallesGenerico,
uViewProveedoresArticulo; uViewProveedoresArticulo, cxControls, cxContainer, cxEdit, cxLabel;
type type
TfEditorArticulo = class(TfEditorDBItem, IEditorArticulo) TfEditorArticulo = class(TfEditorDBItem, IEditorArticulo)
@ -150,7 +150,7 @@ begin
Articulo.DataTable.Active := True; Articulo.DataTable.Active := True;
if (FArticulo.ID = CTE_ART_COMISIONABLE_MODIFICABLE) then if (FArticulo.REFERENCIA_PROV = CTE_ART_COMISIONABLE_MODIFICABLE) then
pagPrecios.Enabled := False; pagPrecios.Enabled := False;
end; end;

View File

@ -2,11 +2,18 @@ inherited fEditorArticulos: TfEditorArticulos
Left = 489 Left = 489
Top = 325 Top = 325
Caption = 'Lista de art'#237'culos' Caption = 'Lista de art'#237'culos'
ClientHeight = 667
ClientWidth = 1254
ExplicitWidth = 1270
ExplicitHeight = 705
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
Width = 1254
Caption = 'Lista de articulos' Caption = 'Lista de articulos'
ExplicitWidth = 1254
inherited Image1: TImage inherited Image1: TImage
Left = 1227
Picture.Data = { Picture.Data = {
0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001C00 0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001C00
00001C0806000000720DDF940000000970485973000017120000171201679FD2 00001C0806000000720DDF940000000970485973000017120000171201679FD2
@ -25,13 +32,13 @@ inherited fEditorArticulos: TfEditorArticulos
end end
end end
inherited TBXDock: TTBXDock inherited TBXDock: TTBXDock
Height = 105 Width = 1254
ExplicitHeight = 105 ExplicitWidth = 1254
inherited tbxMain: TTBXToolbar inherited tbxMain: TTBXToolbar
ExplicitWidth = 543 ExplicitWidth = 688
end end
inherited tbxFiltro: TTBXToolbar inherited tbxFiltro: TTBXToolbar
ExplicitWidth = 572 ExplicitWidth = 550
inherited lblAno: TTBXLabelItem inherited lblAno: TTBXLabelItem
Caption = 'Tarifas:' Caption = 'Tarifas:'
Visible = True Visible = True
@ -48,15 +55,15 @@ inherited fEditorArticulos: TfEditorArticulos
Visible = True Visible = True
end end
end end
inherited tbxMenu: TTBXToolbar
ExplicitWidth = 1254
end
inherited TBXTMain2: TTBXToolbar inherited TBXTMain2: TTBXToolbar
Left = 191 Left = 550
Top = 79
DockPos = 275 DockPos = 275
Visible = True Visible = True
ExplicitLeft = 191 ExplicitLeft = 550
ExplicitTop = 79 ExplicitWidth = 511
ExplicitWidth = 352
ExplicitHeight = 26
object TBXItem38: TTBXItem object TBXItem38: TTBXItem
Action = actAsignarTarifa Action = actAsignarTarifa
DisplayMode = nbdmImageAndText DisplayMode = nbdmImageAndText
@ -73,8 +80,20 @@ inherited fEditorArticulos: TfEditorArticulos
Action = actComisionable Action = actComisionable
DisplayMode = nbdmImageAndText DisplayMode = nbdmImageAndText
end end
object TBXSeparatorItem19: TTBXSeparatorItem
end
object TBXItem41: TTBXItem
Action = actBuscarArticulo
DisplayMode = nbdmImageAndText
end
end end
end end
inherited StatusBar: TJvStatusBar
Top = 648
Width = 1254
ExplicitTop = 648
ExplicitWidth = 1254
end
inherited EditorActionList: TActionList inherited EditorActionList: TActionList
inherited actNuevo: TAction inherited actNuevo: TAction
ImageIndex = 24 ImageIndex = 24
@ -108,6 +127,12 @@ inherited fEditorArticulos: TfEditorArticulos
OnExecute = actComisionableExecute OnExecute = actComisionableExecute
OnUpdate = actComisionableUpdate OnUpdate = actComisionableUpdate
end end
object actBuscarArticulo: TAction
Caption = 'Buscar art'#237'culo en pedidos'
ImageIndex = 28
OnExecute = actBuscarArticuloExecute
OnUpdate = actBuscarArticuloUpdate
end
end end
inherited SmallImages: TPngImageList inherited SmallImages: TPngImageList
PngImages = < PngImages = <
@ -822,6 +847,25 @@ inherited fEditorArticulos: TfEditorArticulos
4E44AE426082} 4E44AE426082}
Name = 'PngImage27' Name = 'PngImage27'
Background = clWindow Background = clWindow
end
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
61000000097048597300000B3A00000B3A01647F570D0000015D4944415478DA
63FCFFFF3F030830323232C0C0CEB58DCA2F6E6CBDF3FEF129B818C30F061490
3FFF3F58032336032E9C58FD9F8B47904155DB192EF6FFD72B867F9F2F31FCB9
E3CA3063061E0380B6DBB373F01CB076CD66606165C7AAB96001923E6403809A
9979F925FEC8299B32482B18E2D40C16C7614032D08039164EA97017810CF875
5E1CAC196F18EC5AD7C40F74FA073DB36006411179B8E6FF3F5F32FCBEA687A2
196B18000D681797D6AAD06008852B64D5BA0434E4251833000DFBFBA2087718
2CEF76FFFFE1E119865F5FDF81F9B993706BC61906D0589056D7D07F2223CE8D
53332103DAC5C4A52B749438706AC6170BECACAC6C3FF4547918F8397FE3D48C
3F1A79F9E7982A7F66F8FBBA16A7669C061CDB35E1BF9CAA1D83C84B23BC9AB1
1A008C466BA0F38F5888D632CC9AF907AF66AC065C383AF73FC7B7150C3B97ED
21A819AB0137CE2CFBBF776E2643CE8C4F0435231B00004A4C11F0D3652A8300
00000049454E44AE426082}
Name = 'PngImage28'
Background = clWindow
end> end>
Bitmap = {} Bitmap = {}
end end

View File

@ -25,6 +25,9 @@ type
actComisionable: TAction; actComisionable: TAction;
TBXSeparatorItem18: TTBXSeparatorItem; TBXSeparatorItem18: TTBXSeparatorItem;
TBXItem40: TTBXItem; TBXItem40: TTBXItem;
actBuscarArticulo: TAction;
TBXSeparatorItem19: TTBXSeparatorItem;
TBXItem41: TTBXItem;
procedure FormShow(Sender: TObject); procedure FormShow(Sender: TObject);
procedure actFamiliasExecute(Sender: TObject); procedure actFamiliasExecute(Sender: TObject);
procedure actAsignarTarifaExecute(Sender: TObject); procedure actAsignarTarifaExecute(Sender: TObject);
@ -35,6 +38,8 @@ type
procedure actComisionableExecute(Sender: TObject); procedure actComisionableExecute(Sender: TObject);
procedure actComisionableUpdate(Sender: TObject); procedure actComisionableUpdate(Sender: TObject);
procedure OnListaTarifasChange(Sender: TObject; const Text: string); procedure OnListaTarifasChange(Sender: TObject; const Text: string);
procedure actBuscarArticuloExecute(Sender: TObject);
procedure actBuscarArticuloUpdate(Sender: TObject);
private private
FArticulos: IBizArticulo; FArticulos: IBizArticulo;
FController : IArticulosController; FController : IArticulosController;
@ -242,6 +247,23 @@ begin
(Sender as TAction).Enabled := False; (Sender as TAction).Enabled := False;
end; end;
procedure TfEditorArticulos.actBuscarArticuloExecute(Sender: TObject);
begin
inherited;
(FController as IArticulosController).BuscarPedidoConArticulo(Articulos);
end;
procedure TfEditorArticulos.actBuscarArticuloUpdate(Sender: TObject);
begin
inherited;
if HayDatos and Assigned(ViewGrid) then
(Sender as TAction).Enabled := not (dsDataTable.DataTable.State in dsEditModes)
and ViewGrid.esSeleccionCeldaDatos
and (ViewGrid.NumSeleccionados = 1)
else
(Sender as TAction).Enabled := False;
end;
procedure TfEditorArticulos.actComisionableExecute(Sender: TObject); procedure TfEditorArticulos.actComisionableExecute(Sender: TObject);
var var
AArticulos: IBizArticulo; AArticulos: IBizArticulo;

View File

@ -2,6 +2,7 @@ inherited fEditorElegirArticulos: TfEditorElegirArticulos
Caption = 'Seleccionar art'#237'culos' Caption = 'Seleccionar art'#237'culos'
ClientWidth = 656 ClientWidth = 656
ExplicitWidth = 664 ExplicitWidth = 664
ExplicitHeight = 240
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
@ -19,8 +20,10 @@ inherited fEditorElegirArticulos: TfEditorElegirArticulos
inherited TBXDock: TTBXDock inherited TBXDock: TTBXDock
Top = 91 Top = 91
Width = 656 Width = 656
Height = 104
ExplicitTop = 91 ExplicitTop = 91
ExplicitWidth = 656 ExplicitWidth = 656
ExplicitHeight = 104
inherited tbxMain: TTBXToolbar inherited tbxMain: TTBXToolbar
Align = alLeft Align = alLeft
DockPos = -6 DockPos = -6
@ -43,11 +46,14 @@ inherited fEditorElegirArticulos: TfEditorElegirArticulos
ExplicitWidth = 656 ExplicitWidth = 656
end end
inherited TBXTMain2: TTBXToolbar inherited TBXTMain2: TTBXToolbar
Left = 317 Left = 145
Top = 78
DockPos = 536 DockPos = 536
DockRow = 1 DockRow = 1
Visible = False Visible = False
ExplicitLeft = 317 ExplicitLeft = 145
ExplicitTop = 78
ExplicitHeight = 26
end end
end end
inherited StatusBar: TJvStatusBar inherited StatusBar: TJvStatusBar
@ -57,7 +63,7 @@ inherited fEditorElegirArticulos: TfEditorElegirArticulos
end end
inline frViewBarraSeleccion1: TfrViewBarraSeleccion [3] inline frViewBarraSeleccion1: TfrViewBarraSeleccion [3]
Left = 0 Left = 0
Top = 376 Top = 599
Width = 656 Width = 656
Height = 49 Height = 49
Align = alBottom Align = alBottom
@ -69,7 +75,7 @@ inherited fEditorElegirArticulos: TfEditorElegirArticulos
ParentFont = False ParentFont = False
TabOrder = 0 TabOrder = 0
ReadOnly = False ReadOnly = False
ExplicitTop = 376 ExplicitTop = 599
ExplicitWidth = 656 ExplicitWidth = 656
inherited JvFooter1: TJvFooter inherited JvFooter1: TJvFooter
Width = 656 Width = 656

View File

@ -1,6 +1,6 @@
inherited frViewArticulo: TfrViewArticulo inherited frViewArticulo: TfrViewArticulo
Width = 1046 Width = 833
Height = 571 Height = 613
Align = alClient Align = alClient
OnCreate = CustomViewCreate OnCreate = CustomViewCreate
OnDestroy = CustomViewDestroy OnDestroy = CustomViewDestroy
@ -10,7 +10,7 @@ inherited frViewArticulo: TfrViewArticulo
object dxLayoutControlArticulo: TdxLayoutControl object dxLayoutControlArticulo: TdxLayoutControl
Left = 0 Left = 0
Top = 0 Top = 0
Width = 1046 Width = 833
Height = 833 Height = 833
Align = alTop Align = alTop
ParentBackground = True ParentBackground = True
@ -19,10 +19,10 @@ inherited frViewArticulo: TfrViewArticulo
AutoContentSizes = [acsWidth] AutoContentSizes = [acsWidth]
ExplicitWidth = 451 ExplicitWidth = 451
DesignSize = ( DesignSize = (
1046 833
833) 833)
object PngSpeedButton2: TPngSpeedButton object PngSpeedButton2: TPngSpeedButton
Left = 982 Left = 771
Top = 867 Top = 867
Width = 23 Width = 23
Height = 22 Height = 22
@ -49,7 +49,7 @@ inherited frViewArticulo: TfrViewArticulo
PngOptions = [pngBlendOnDisabled, pngGrayscaleOnDisabled] PngOptions = [pngBlendOnDisabled, pngGrayscaleOnDisabled]
end end
object PngSpeedButton1: TPngSpeedButton object PngSpeedButton1: TPngSpeedButton
Left = 982 Left = 771
Top = 895 Top = 895
Width = 23 Width = 23
Height = 22 Height = 22
@ -177,12 +177,12 @@ inherited frViewArticulo: TfrViewArticulo
Width = 327 Width = 327
end end
inherited edtCodigoPostal: TcxDBTextEdit inherited edtCodigoPostal: TcxDBTextEdit
Left = 891 Left = 680
ExplicitLeft = 891 ExplicitLeft = 680
end end
inherited Button3: TBitBtn inherited Button3: TBitBtn
Left = 775 Left = 564
ExplicitLeft = 775 ExplicitLeft = 564
end end
end end
end end
@ -421,7 +421,7 @@ inherited frViewArticulo: TfrViewArticulo
Width = 664 Width = 664
end end
object eReferenciaFab: TcxDBTextEdit object eReferenciaFab: TcxDBTextEdit
Left = 623 Left = 519
Top = 410 Top = 410
DataBinding.DataField = 'REFERENCIA_FAB' DataBinding.DataField = 'REFERENCIA_FAB'
DataBinding.DataSource = dsViewArticulo DataBinding.DataSource = dsViewArticulo
@ -447,10 +447,11 @@ inherited frViewArticulo: TfrViewArticulo
DataBinding.DataSource = dsViewArticulo DataBinding.DataSource = dsViewArticulo
Properties.Alignment.Horz = taRightJustify Properties.Alignment.Horz = taRightJustify
Properties.AssignedValues.MinValue = True Properties.AssignedValues.MinValue = True
Properties.DisplayFormat = ',0'
Properties.ImmediatePost = True Properties.ImmediatePost = True
Properties.Increment = 5.000000000000000000 Properties.Increment = 5.000000000000000000
Properties.LargeIncrement = 20.000000000000000000 Properties.LargeIncrement = 20.000000000000000000
Properties.MaxValue = 100.000000000000000000 Properties.MaxValue = 9999.000000000000000000
Style.BorderColor = clWindowFrame Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D Style.BorderStyle = ebs3D
Style.HotTrack = False Style.HotTrack = False
@ -574,9 +575,6 @@ inherited frViewArticulo: TfrViewArticulo
inherited actEliminar: TAction inherited actEliminar: TAction
Caption = 'Eliminar ingl'#233's' Caption = 'Eliminar ingl'#233's'
end end
inherited actModificar: TAction
Enabled = False
end
end end
end end
object dxLayoutControlArticuloGroup_Root: TdxLayoutGroup object dxLayoutControlArticuloGroup_Root: TdxLayoutGroup

View File

@ -384,11 +384,12 @@ procedure TfrViewArticulo.CustomViewShow(Sender: TObject);
begin begin
inherited; inherited;
if (FArticulo.ID = CTE_ART_COMISIONABLE_MODIFICABLE) then if (FArticulo.REFERENCIA_PROV = CTE_ART_COMISIONABLE_MODIFICABLE) then
begin begin
dxLayoutControlArticuloGroup11.Enabled := false; dxLayoutControlArticuloGroup11.Enabled := false;
dxLayoutControlArticuloGroup13.Enabled := false; dxLayoutControlArticuloGroup13.Enabled := false;
end; end;
// ePrecioCoste.Properties.OnEditValueChanged := PrecioNetoChanged; // ePrecioCoste.Properties.OnEditValueChanged := PrecioNetoChanged;
// eDescuento.Properties.OnEditValueChanged := PrecioNetoChanged; // eDescuento.Properties.OnEditValueChanged := PrecioNetoChanged;
end; end;

View File

@ -9,8 +9,8 @@ inherited frViewArticulos: TfrViewArticulos
Width = 720 Width = 720
Height = 399 Height = 399
OnActiveTabChanged = cxGridActiveTabChanged OnActiveTabChanged = cxGridActiveTabChanged
ExplicitWidth = 896 ExplicitWidth = 720
ExplicitHeight = 552 ExplicitHeight = 399
inherited cxGridView: TcxGridDBTableView inherited cxGridView: TcxGridDBTableView
OnMouseMove = cxGridViewMouseMove OnMouseMove = cxGridViewMouseMove
DataController.KeyFieldNames = 'ID' DataController.KeyFieldNames = 'ID'
@ -75,6 +75,11 @@ inherited frViewArticulos: TfrViewArticulos
Options.HorzSizing = False Options.HorzSizing = False
Width = 22 Width = 22
end end
object cxGridViewID_ARTICULO: TcxGridDBColumn
Caption = 'Identificador'
DataBinding.FieldName = 'ID'
Visible = False
end
object cxGridViewREFERENCIA: TcxGridDBColumn object cxGridViewREFERENCIA: TcxGridDBColumn
Caption = 'Referencia' Caption = 'Referencia'
DataBinding.FieldName = 'REFERENCIA' DataBinding.FieldName = 'REFERENCIA'
@ -194,12 +199,12 @@ inherited frViewArticulos: TfrViewArticulos
end end
inherited frViewFiltroBase1: TfrViewFiltroBase inherited frViewFiltroBase1: TfrViewFiltroBase
Width = 720 Width = 720
ExplicitWidth = 896 ExplicitWidth = 720
inherited TBXDockablePanel1: TTBXDockablePanel inherited TBXDockablePanel1: TTBXDockablePanel
ExplicitWidth = 896 ExplicitWidth = 720
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 720 Width = 720
ExplicitWidth = 896 ExplicitWidth = 720
inherited txtFiltroTodo: TcxTextEdit inherited txtFiltroTodo: TcxTextEdit
Style.LookAndFeel.SkinName = '' Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = '' StyleDisabled.LookAndFeel.SkinName = ''
@ -252,10 +257,10 @@ inherited frViewArticulos: TfrViewArticulos
end end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 720 Width = 720
ExplicitWidth = 896 ExplicitWidth = 720
inherited tbxBotones: TTBXToolbar inherited tbxBotones: TTBXToolbar
Width = 710 Width = 710
ExplicitWidth = 886 ExplicitWidth = 710
end end
end end
end end
@ -263,14 +268,14 @@ inherited frViewArticulos: TfrViewArticulos
inherited pnlAgrupaciones: TTBXDockablePanel inherited pnlAgrupaciones: TTBXDockablePanel
Top = 501 Top = 501
Visible = True Visible = True
ExplicitTop = 654 ExplicitTop = 501
ExplicitWidth = 896 ExplicitWidth = 720
inherited TBXAlignmentPanel1: TTBXAlignmentPanel inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 720 Width = 720
ExplicitWidth = 896 ExplicitWidth = 720
inherited TBXToolbar1: TTBXToolbar inherited TBXToolbar1: TTBXToolbar
Width = 710 Width = 710
ExplicitWidth = 886 ExplicitWidth = 710
object TBXSeparatorItem1: TTBXSeparatorItem object TBXSeparatorItem1: TTBXSeparatorItem
end end
object TBXItem3: TTBXItem object TBXItem3: TTBXItem

View File

@ -47,6 +47,7 @@ type
cxGridLevel1: TcxGridLevel; cxGridLevel1: TcxGridLevel;
cxGridLevel2: TcxGridLevel; cxGridLevel2: TcxGridLevel;
cxGridViewUNIDAD_MEDIDA: TcxGridDBColumn; cxGridViewUNIDAD_MEDIDA: TcxGridDBColumn;
cxGridViewID_ARTICULO: TcxGridDBColumn;
procedure cxGridViewIDCustomDrawCell( procedure cxGridViewIDCustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);

View File

@ -11,6 +11,10 @@ inherited frViewIdiomasArticulo: TfrViewIdiomasArticulo
ExplicitHeight = 75 ExplicitHeight = 75
inherited cxGridView: TcxGridDBTableView inherited cxGridView: TcxGridDBTableView
DataController.KeyFieldNames = 'RecID' DataController.KeyFieldNames = 'RecID'
OptionsData.Appending = False
OptionsData.Deleting = False
OptionsData.DeletingConfirmation = False
OptionsData.Inserting = False
object cxGridViewID_IDIOMA: TcxGridDBColumn object cxGridViewID_IDIOMA: TcxGridDBColumn
Caption = 'Idioma' Caption = 'Idioma'
DataBinding.FieldName = 'ID_IDIOMA' DataBinding.FieldName = 'ID_IDIOMA'
@ -47,6 +51,7 @@ inherited frViewIdiomasArticulo: TfrViewIdiomasArticulo
end end
inherited ToolBar1: TToolBar inherited ToolBar1: TToolBar
Width = 774 Width = 774
Visible = False
ExplicitWidth = 774 ExplicitWidth = 774
inherited ToolButton1: TToolButton inherited ToolButton1: TToolButton
ExplicitWidth = 62 ExplicitWidth = 62
@ -72,7 +77,16 @@ inherited frViewIdiomasArticulo: TfrViewIdiomasArticulo
inherited ActionListContenido: TActionList inherited ActionListContenido: TActionList
Left = 352 Left = 352
Top = 8 Top = 8
inherited actAnadir: TAction
Enabled = False
Visible = False
end
inherited actEliminar: TAction
Enabled = False
Visible = False
end
inherited actModificar: TAction inherited actModificar: TAction
Enabled = False
Visible = False Visible = False
end end
inherited actAnchoAutomatico: TAction inherited actAnchoAutomatico: TAction

View File

@ -62,13 +62,13 @@ uses schArticulosClient_Intf;
procedure TfrViewIdiomasArticulo.actAnadirUpdate(Sender: TObject); procedure TfrViewIdiomasArticulo.actAnadirUpdate(Sender: TObject);
begin begin
inherited; inherited;
(Sender as TAction).Enabled := (dsDetalles.DataTable.RecordCount = 0); // (Sender as TAction).Enabled := (dsDetalles.DataTable.RecordCount < 2);
end; end;
procedure TfrViewIdiomasArticulo.AnadirInterno; procedure TfrViewIdiomasArticulo.AnadirInterno;
begin begin
dsDetalles.DataTable.Append; // dsDetalles.DataTable.Append;
dsDetalles.DataTable.FieldByName(fld_Articulos_IdiomasID_IDIOMA).AsInteger := CTE_ID_IDIOMA_DEFAULT; // dsDetalles.DataTable.FieldByName(fld_Articulos_IdiomasID_IDIOMA).AsInteger := CTE_ID_IDIOMA_EN;
end; end;
constructor TfrViewIdiomasArticulo.Create(AOwner: TComponent); constructor TfrViewIdiomasArticulo.Create(AOwner: TComponent);

View File

@ -43,12 +43,6 @@
<Borland.ProjectType>Package</Borland.ProjectType> <Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject> <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> <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="D:\MISDOC~1\BORLAN~1\Bpl\JclDebugExpert100.bpl">JCL Debug IDE extension</Excluded_Packages> <Excluded_Packages Name="D:\MISDOC~1\BORLAN~1\Bpl\JclDebugExpert100.bpl">JCL Debug IDE extension</Excluded_Packages>
<Excluded_Packages Name="D:\MISDOC~1\BORLAN~1\Bpl\JclProjectAnalysisExpert100.bpl">JCL Project Analyzer</Excluded_Packages> <Excluded_Packages Name="D:\MISDOC~1\BORLAN~1\Bpl\JclProjectAnalysisExpert100.bpl">JCL Project Analyzer</Excluded_Packages>
<Excluded_Packages Name="D:\MISDOC~1\BORLAN~1\Bpl\JclFavoriteFoldersExpert100.bpl">JCL Open and Save IDE dialogs with favorite folders</Excluded_Packages> <Excluded_Packages Name="D:\MISDOC~1\BORLAN~1\Bpl\JclFavoriteFoldersExpert100.bpl">JCL Open and Save IDE dialogs with favorite folders</Excluded_Packages>
@ -59,6 +53,29 @@
<DelphiCompile Include="Contactos_controller.dpk"> <DelphiCompile Include="Contactos_controller.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="$(SystemRoot)\system32\adortl.dcp" />
<DCCReference Include="$(SystemRoot)\system32\ApplicationBase.dcp" />
<DCCReference Include="$(SystemRoot)\system32\Base.dcp" />
<DCCReference Include="$(SystemRoot)\system32\Contabilidad_controller.dcp" />
<DCCReference Include="$(SystemRoot)\system32\Contactos_data.dcp" />
<DCCReference Include="$(SystemRoot)\system32\Contactos_model.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\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="uClientesController.pas" /> <DCCReference Include="uClientesController.pas" />
<DCCReference Include="uComercialesController.pas" /> <DCCReference Include="uComercialesController.pas" />
<DCCReference Include="uContactosController.pas" /> <DCCReference Include="uContactosController.pas" />
@ -71,24 +88,6 @@
<DCCReference Include="uProcedenciasClienteController.pas" /> <DCCReference Include="uProcedenciasClienteController.pas" />
<DCCReference Include="uProveedoresController.pas" /> <DCCReference Include="uProveedoresController.pas" />
<DCCReference Include="uVendedoresController.pas" /> <DCCReference Include="uVendedoresController.pas" />
<DCCReference Include="View\adortl.dcp" />
<DCCReference Include="View\ApplicationBase.dcp" />
<DCCReference Include="View\Base.dcp" />
<DCCReference Include="View\Contabilidad_controller.dcp" />
<DCCReference Include="View\Contactos_data.dcp" />
<DCCReference Include="View\Contactos_model.dcp" />
<DCCReference Include="View\cxLibraryD11.dcp" />
<DCCReference Include="View\DataAbstract_Core_D11.dcp" />
<DCCReference Include="View\dbrtl.dcp" />
<DCCReference Include="View\designide.dcp" />
<DCCReference Include="View\dsnap.dcp" />
<DCCReference Include="View\dxCoreD11.dcp" />
<DCCReference Include="View\dxGDIPlusD11.dcp" />
<DCCReference Include="View\dxThemeD11.dcp" />
<DCCReference Include="View\GUIBase.dcp" />
<DCCReference Include="View\GUISDK_D11R.dcp" />
<DCCReference Include="View\RemObjects_Core_D11.dcp" />
<DCCReference Include="View\rtl.dcp" />
<DCCReference Include="View\uIEditorCliente.pas" /> <DCCReference Include="View\uIEditorCliente.pas" />
<DCCReference Include="View\uIEditorClientes.pas" /> <DCCReference Include="View\uIEditorClientes.pas" />
<DCCReference Include="View\uIEditorComercial.pas" /> <DCCReference Include="View\uIEditorComercial.pas" />
@ -115,11 +114,6 @@
<DCCReference Include="View\uIEditorProveedores.pas" /> <DCCReference Include="View\uIEditorProveedores.pas" />
<DCCReference Include="View\uIEditorVendedor.pas" /> <DCCReference Include="View\uIEditorVendedor.pas" />
<DCCReference Include="View\uIEditorVendedores.pas" /> <DCCReference Include="View\uIEditorVendedores.pas" />
<DCCReference Include="View\vcl.dcp" />
<DCCReference Include="View\vclactnband.dcp" />
<DCCReference Include="View\vcldb.dcp" />
<DCCReference Include="View\vclx.dcp" />
<DCCReference Include="View\xmlrtl.dcp" />
</ItemGroup> </ItemGroup>
</Project> </Project>
<!-- EurekaLog First Line <!-- EurekaLog First Line

View File

@ -3,11 +3,14 @@ unit uIEditorGruposCliente;
interface interface
uses uses
uEditorDBBase, uBizGruposCliente, uGruposClienteController; uEditorDBBase, uBizGruposCliente, uGruposClienteController, uGUIBase;
type type
IEditorGruposCliente = interface(IEditorDBBase) IEditorGruposCliente = interface(ICustomEditor)
['{7BF79417-A95C-41F3-96DE-707F2D6F29E3}'] ['{7BF79417-A95C-41F3-96DE-707F2D6F29E3}']
function ShowModal : Integer;
procedure Show;
function GetGruposCliente: IBizGrupoCliente; function GetGruposCliente: IBizGrupoCliente;
procedure SetGruposCliente(const Value: IBizGrupoCliente); procedure SetGruposCliente(const Value: IBizGrupoCliente);
property GruposCliente: IBizGrupoCliente read GetGruposCliente write SetGruposCliente; property GruposCliente: IBizGrupoCliente read GetGruposCliente write SetGruposCliente;

View File

@ -3,11 +3,14 @@ unit uIEditorGruposProveedor;
interface interface
uses uses
uEditorDBBase, uBizGruposProveedor, uGruposProveedorController; uEditorDBBase, uBizGruposProveedor, uGruposProveedorController, uGUIBase;
type type
IEditorGruposProveedor = interface(IEditorDBBase) IEditorGruposProveedor = interface(ICustomEditor)
['{A593BC54-0A28-446E-A6B7-E925D7C4B82C}'] ['{A593BC54-0A28-446E-A6B7-E925D7C4B82C}']
function ShowModal : Integer;
procedure Show;
function GetGruposProveedor: IBizGrupoProveedor; function GetGruposProveedor: IBizGrupoProveedor;
procedure SetGruposProveedor(const Value: IBizGrupoProveedor); procedure SetGruposProveedor(const Value: IBizGrupoProveedor);
property GruposProveedor: IBizGrupoProveedor read GetGruposProveedor write SetGruposProveedor; property GruposProveedor: IBizGrupoProveedor read GetGruposProveedor write SetGruposProveedor;

View File

@ -3,11 +3,14 @@ unit uIEditorProcedenciasCliente;
interface interface
uses uses
uEditorDBBase, uBizProcedenciasCliente, uProcedenciasClienteController; uEditorDBBase, uBizProcedenciasCliente, uProcedenciasClienteController, uGUIBase;
type type
IEditorProcedenciasCliente = interface(IEditorDBBase) IEditorProcedenciasCliente = interface(ICustomEditor)
['{E4FD5FEA-9771-40FD-AC69-600BE859ECCE}'] ['{E4FD5FEA-9771-40FD-AC69-600BE859ECCE}']
function ShowModal : Integer;
procedure Show;
function GetProcedenciasCliente: IBizProcedenciaCliente; function GetProcedenciasCliente: IBizProcedenciaCliente;
procedure SetProcedenciasCliente(const Value: IBizProcedenciaCliente); procedure SetProcedenciasCliente(const Value: IBizProcedenciaCliente);
property ProcedenciasCliente: IBizProcedenciaCliente read GetProcedenciasCliente write SetProcedenciasCliente; property ProcedenciasCliente: IBizProcedenciaCliente read GetProcedenciasCliente write SetProcedenciasCliente;

View File

@ -47,64 +47,64 @@
<DelphiCompile Include="Contactos_view.dpk"> <DelphiCompile Include="Contactos_view.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\..\..\Servidor\adortl.dcp" /> <DCCReference Include="$(SystemRoot)\system32\adortl.dcp" />
<DCCReference Include="..\..\..\Servidor\ApplicationBase.dcp" /> <DCCReference Include="$(SystemRoot)\system32\ApplicationBase.dcp" />
<DCCReference Include="..\..\..\Servidor\Base.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Base.dcp" />
<DCCReference Include="..\..\..\Servidor\bdertl.dcp" /> <DCCReference Include="$(SystemRoot)\system32\bdertl.dcp" />
<DCCReference Include="..\..\..\Servidor\Contactos_controller.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Contactos_controller.dcp" />
<DCCReference Include="..\..\..\Servidor\Contactos_model.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Contactos_model.dcp" />
<DCCReference Include="..\..\..\Servidor\cxDataD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxDataD11.dcp" />
<DCCReference Include="..\..\..\Servidor\cxEditorsD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxEditorsD11.dcp" />
<DCCReference Include="..\..\..\Servidor\cxExportD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxExportD11.dcp" />
<DCCReference Include="..\..\..\Servidor\cxExtEditorsD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxExtEditorsD11.dcp" />
<DCCReference Include="..\..\..\Servidor\cxGridD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxGridD11.dcp" />
<DCCReference Include="..\..\..\Servidor\cxLibraryD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxLibraryD11.dcp" />
<DCCReference Include="..\..\..\Servidor\cxPageControlD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxPageControlD11.dcp" />
<DCCReference Include="..\..\..\Servidor\DataAbstract_Core_D11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\DataAbstract_Core_D11.dcp" />
<DCCReference Include="..\..\..\Servidor\dbrtl.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dbrtl.dcp" />
<DCCReference Include="..\..\..\Servidor\dclcxLibraryD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dclcxLibraryD11.dcp" />
<DCCReference Include="..\..\..\Servidor\dcldxCoreD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dcldxCoreD11.dcp" />
<DCCReference Include="..\..\..\Servidor\Delegaciones_controller.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Delegaciones_controller.dcp" />
<DCCReference Include="..\..\..\Servidor\designide.dcp" /> <DCCReference Include="$(SystemRoot)\system32\designide.dcp" />
<DCCReference Include="..\..\..\Servidor\dsnap.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dsnap.dcp" />
<DCCReference Include="..\..\..\Servidor\dxComnD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxComnD11.dcp" />
<DCCReference Include="..\..\..\Servidor\dxCoreD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxCoreD11.dcp" />
<DCCReference Include="..\..\..\Servidor\dxGDIPlusD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxGDIPlusD11.dcp" />
<DCCReference Include="..\..\..\Servidor\dxLayoutControlD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxLayoutControlD11.dcp" />
<DCCReference Include="..\..\..\Servidor\dxPSCoreD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxPSCoreD11.dcp" />
<DCCReference Include="..\..\..\Servidor\dxPScxCommonD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxPScxCommonD11.dcp" />
<DCCReference Include="..\..\..\Servidor\dxPScxGrid6LnkD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxPScxGrid6LnkD11.dcp" />
<DCCReference Include="..\..\..\Servidor\dxPSLnksD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxPSLnksD11.dcp" />
<DCCReference Include="..\..\..\Servidor\dxThemeD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxThemeD11.dcp" />
<DCCReference Include="..\..\..\Servidor\FormasPago_controller.dcp" /> <DCCReference Include="$(SystemRoot)\system32\FormasPago_controller.dcp" />
<DCCReference Include="..\..\..\Servidor\FormasPago_model.dcp" /> <DCCReference Include="$(SystemRoot)\system32\FormasPago_model.dcp" />
<DCCReference Include="..\..\..\Servidor\GestorInformes_controller.dcp" /> <DCCReference Include="$(SystemRoot)\system32\GestorInformes_controller.dcp" />
<DCCReference Include="..\..\..\Servidor\GUIBase.dcp" /> <DCCReference Include="$(SystemRoot)\system32\GUIBase.dcp" />
<DCCReference Include="..\..\..\Servidor\GUISDK_D11R.dcp" /> <DCCReference Include="$(SystemRoot)\system32\GUISDK_D11R.dcp" />
<DCCReference Include="..\..\..\Servidor\Jcl.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Jcl.dcp" />
<DCCReference Include="..\..\..\Servidor\JclVcl.dcp" /> <DCCReference Include="$(SystemRoot)\system32\JclVcl.dcp" />
<DCCReference Include="..\..\..\Servidor\JSDialog100.dcp" /> <DCCReference Include="$(SystemRoot)\system32\JSDialog100.dcp" />
<DCCReference Include="..\..\..\Servidor\JvCoreD11R.dcp" /> <DCCReference Include="$(SystemRoot)\system32\JvCoreD11R.dcp" />
<DCCReference Include="..\..\..\Servidor\JvCtrlsD11R.dcp" /> <DCCReference Include="$(SystemRoot)\system32\JvCtrlsD11R.dcp" />
<DCCReference Include="..\..\..\Servidor\JvGlobusD11R.dcp" /> <DCCReference Include="$(SystemRoot)\system32\JvGlobusD11R.dcp" />
<DCCReference Include="..\..\..\Servidor\JvPageCompsD11R.dcp" /> <DCCReference Include="$(SystemRoot)\system32\JvPageCompsD11R.dcp" />
<DCCReference Include="..\..\..\Servidor\JvStdCtrlsD11R.dcp" /> <DCCReference Include="$(SystemRoot)\system32\JvStdCtrlsD11R.dcp" />
<DCCReference Include="..\..\..\Servidor\JvSystemD11R.dcp" /> <DCCReference Include="$(SystemRoot)\system32\JvSystemD11R.dcp" />
<DCCReference Include="..\..\..\Servidor\PngComponentsD10.dcp" /> <DCCReference Include="$(SystemRoot)\system32\PngComponentsD10.dcp" />
<DCCReference Include="..\..\..\Servidor\PNG_D10.dcp" /> <DCCReference Include="$(SystemRoot)\system32\PNG_D10.dcp" />
<DCCReference Include="..\..\..\Servidor\RemObjects_Core_D11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\RemObjects_Core_D11.dcp" />
<DCCReference Include="..\..\..\Servidor\rtl.dcp" /> <DCCReference Include="$(SystemRoot)\system32\rtl.dcp" />
<DCCReference Include="..\..\..\Servidor\tb2k_d10.dcp" /> <DCCReference Include="$(SystemRoot)\system32\tb2k_d10.dcp" />
<DCCReference Include="..\..\..\Servidor\tbx_d10.dcp" /> <DCCReference Include="$(SystemRoot)\system32\tbx_d10.dcp" />
<DCCReference Include="..\..\..\Servidor\TiposIVA_controller.dcp" /> <DCCReference Include="$(SystemRoot)\system32\TiposIVA_controller.dcp" />
<DCCReference Include="..\..\..\Servidor\TiposIVA_model.dcp" /> <DCCReference Include="$(SystemRoot)\system32\TiposIVA_model.dcp" />
<DCCReference Include="..\..\..\Servidor\vcl.dcp" /> <DCCReference Include="$(SystemRoot)\system32\vcl.dcp" />
<DCCReference Include="..\..\..\Servidor\vclactnband.dcp" /> <DCCReference Include="$(SystemRoot)\system32\vclactnband.dcp" />
<DCCReference Include="..\..\..\Servidor\vcldb.dcp" /> <DCCReference Include="$(SystemRoot)\system32\vcldb.dcp" />
<DCCReference Include="..\..\..\Servidor\vcljpg.dcp" /> <DCCReference Include="$(SystemRoot)\system32\vcljpg.dcp" />
<DCCReference Include="..\..\..\Servidor\vclshlctrls.dcp" /> <DCCReference Include="$(SystemRoot)\system32\vclshlctrls.dcp" />
<DCCReference Include="..\..\..\Servidor\vclx.dcp" /> <DCCReference Include="$(SystemRoot)\system32\vclx.dcp" />
<DCCReference Include="..\..\..\Servidor\xmlrtl.dcp" /> <DCCReference Include="$(SystemRoot)\system32\xmlrtl.dcp" />
<DCCReference Include="uContactosViewRegister.pas" /> <DCCReference Include="uContactosViewRegister.pas" />
<DCCReference Include="uEditorAsignarComercial.pas"> <DCCReference Include="uEditorAsignarComercial.pas">
<Form>fEditorAsignarComercial</Form> <Form>fEditorAsignarComercial</Form>

View File

@ -20,10 +20,10 @@ inherited fEditorContactos: TfEditorContactos
Width = 974 Width = 974
ExplicitWidth = 974 ExplicitWidth = 974
inherited tbxMain: TTBXToolbar inherited tbxMain: TTBXToolbar
ExplicitWidth = 694 ExplicitWidth = 671
end end
inherited tbxFiltro: TTBXToolbar inherited tbxFiltro: TTBXToolbar
ExplicitWidth = 201 ExplicitWidth = 195
inherited tbxEditFiltro: TTBXEditItem inherited tbxEditFiltro: TTBXEditItem
EditOptions = [tboUseEditWhenVertical] EditOptions = [tboUseEditWhenVertical]
end end

View File

@ -25,6 +25,7 @@
<Projects Include="..\Pedidos a proveedor\Model\PedidosProveedor_model.dproj" /> <Projects Include="..\Pedidos a proveedor\Model\PedidosProveedor_model.dproj" />
<Projects Include="..\Pedidos a proveedor\Views\PedidosProveedor_view.dproj" /> <Projects Include="..\Pedidos a proveedor\Views\PedidosProveedor_view.dproj" />
<Projects Include="..\Presupuestos de cliente\Controller\PresupuestosCliente_controller.dproj" /> <Projects Include="..\Presupuestos de cliente\Controller\PresupuestosCliente_controller.dproj" />
<Projects Include="..\Presupuestos de cliente\Data\PresupuestosCliente_data.dproj" />
<Projects Include="..\Presupuestos de cliente\Model\PresupuestosCliente_model.dproj" /> <Projects Include="..\Presupuestos de cliente\Model\PresupuestosCliente_model.dproj" />
<Projects Include="..\Presupuestos de cliente\Views\PresupuestosCliente_view.dproj" /> <Projects Include="..\Presupuestos de cliente\Views\PresupuestosCliente_view.dproj" />
<Projects Include="..\Recibos de cliente\Controller\RecibosCliente_controller.dproj" /> <Projects Include="..\Recibos de cliente\Controller\RecibosCliente_controller.dproj" />
@ -381,14 +382,23 @@
<Target Name="RecibosCliente_controller:Make"> <Target Name="RecibosCliente_controller:Make">
<MSBuild Projects="..\Recibos de cliente\Controller\RecibosCliente_controller.dproj" Targets="Make" /> <MSBuild Projects="..\Recibos de cliente\Controller\RecibosCliente_controller.dproj" Targets="Make" />
</Target> </Target>
<Target Name="PresupuestosCliente_data">
<MSBuild Projects="..\Presupuestos de cliente\Data\PresupuestosCliente_data.dproj" Targets="" />
</Target>
<Target Name="PresupuestosCliente_data:Clean">
<MSBuild Projects="..\Presupuestos de cliente\Data\PresupuestosCliente_data.dproj" Targets="Clean" />
</Target>
<Target Name="PresupuestosCliente_data:Make">
<MSBuild Projects="..\Presupuestos de cliente\Data\PresupuestosCliente_data.dproj" Targets="Make" />
</Target>
<Target Name="Build"> <Target Name="Build">
<CallTarget Targets="Base;GUIBase;ApplicationBase;Contactos_model;Contactos_data;Contactos_controller;Contactos_view;Articulos_data;Articulos_controller;Articulos_view;PresupuestosCliente_model;PresupuestosCliente_controller;ContratosCliente_model;ContratosCliente_data;ContratosCliente_controller;AlbaranesCliente_controller;FacturasCliente_controller;ConCli_FacCli_relation;ConCli_AlbCli_relation;PreCli_ConCli_relation;ConCli_RecCli_relation;ContratosCliente_view;ContratosCliente_plugin;FactuGES;FactuGES_Server;PresupuestosCliente_view;AlbCli_FacCli_relation;FacCli_FacProv_relation;FacturasCliente_view;AlbaranesProveedor_view;PedidosProveedor_model;PedidosProveedor_view;PedProv_AlbProv_relation;AlbaranesProveedor_controller;AlbaranesCliente_view;AlbProv_FacProv_relation;RecibosCliente_controller" /> <CallTarget Targets="Base;GUIBase;ApplicationBase;Contactos_model;Contactos_data;Contactos_controller;Contactos_view;Articulos_data;Articulos_controller;Articulos_view;PresupuestosCliente_model;PresupuestosCliente_controller;ContratosCliente_model;ContratosCliente_data;ContratosCliente_controller;AlbaranesCliente_controller;FacturasCliente_controller;ConCli_FacCli_relation;ConCli_AlbCli_relation;PreCli_ConCli_relation;ConCli_RecCli_relation;ContratosCliente_view;ContratosCliente_plugin;FactuGES;FactuGES_Server;PresupuestosCliente_view;AlbCli_FacCli_relation;FacCli_FacProv_relation;FacturasCliente_view;AlbaranesProveedor_view;PedidosProveedor_model;PedidosProveedor_view;PedProv_AlbProv_relation;AlbaranesProveedor_controller;AlbaranesCliente_view;AlbProv_FacProv_relation;RecibosCliente_controller;PresupuestosCliente_data" />
</Target> </Target>
<Target Name="Clean"> <Target Name="Clean">
<CallTarget Targets="Base:Clean;GUIBase:Clean;ApplicationBase:Clean;Contactos_model:Clean;Contactos_data:Clean;Contactos_controller:Clean;Contactos_view:Clean;Articulos_data:Clean;Articulos_controller:Clean;Articulos_view:Clean;PresupuestosCliente_model:Clean;PresupuestosCliente_controller:Clean;ContratosCliente_model:Clean;ContratosCliente_data:Clean;ContratosCliente_controller:Clean;AlbaranesCliente_controller:Clean;FacturasCliente_controller:Clean;ConCli_FacCli_relation:Clean;ConCli_AlbCli_relation:Clean;PreCli_ConCli_relation:Clean;ConCli_RecCli_relation:Clean;ContratosCliente_view:Clean;ContratosCliente_plugin:Clean;FactuGES:Clean;FactuGES_Server:Clean;PresupuestosCliente_view:Clean;AlbCli_FacCli_relation:Clean;FacCli_FacProv_relation:Clean;FacturasCliente_view:Clean;AlbaranesProveedor_view:Clean;PedidosProveedor_model:Clean;PedidosProveedor_view:Clean;PedProv_AlbProv_relation:Clean;AlbaranesProveedor_controller:Clean;AlbaranesCliente_view:Clean;AlbProv_FacProv_relation:Clean;RecibosCliente_controller:Clean" /> <CallTarget Targets="Base:Clean;GUIBase:Clean;ApplicationBase:Clean;Contactos_model:Clean;Contactos_data:Clean;Contactos_controller:Clean;Contactos_view:Clean;Articulos_data:Clean;Articulos_controller:Clean;Articulos_view:Clean;PresupuestosCliente_model:Clean;PresupuestosCliente_controller:Clean;ContratosCliente_model:Clean;ContratosCliente_data:Clean;ContratosCliente_controller:Clean;AlbaranesCliente_controller:Clean;FacturasCliente_controller:Clean;ConCli_FacCli_relation:Clean;ConCli_AlbCli_relation:Clean;PreCli_ConCli_relation:Clean;ConCli_RecCli_relation:Clean;ContratosCliente_view:Clean;ContratosCliente_plugin:Clean;FactuGES:Clean;FactuGES_Server:Clean;PresupuestosCliente_view:Clean;AlbCli_FacCli_relation:Clean;FacCli_FacProv_relation:Clean;FacturasCliente_view:Clean;AlbaranesProveedor_view:Clean;PedidosProveedor_model:Clean;PedidosProveedor_view:Clean;PedProv_AlbProv_relation:Clean;AlbaranesProveedor_controller:Clean;AlbaranesCliente_view:Clean;AlbProv_FacProv_relation:Clean;RecibosCliente_controller:Clean;PresupuestosCliente_data:Clean" />
</Target> </Target>
<Target Name="Make"> <Target Name="Make">
<CallTarget Targets="Base:Make;GUIBase:Make;ApplicationBase:Make;Contactos_model:Make;Contactos_data:Make;Contactos_controller:Make;Contactos_view:Make;Articulos_data:Make;Articulos_controller:Make;Articulos_view:Make;PresupuestosCliente_model:Make;PresupuestosCliente_controller:Make;ContratosCliente_model:Make;ContratosCliente_data:Make;ContratosCliente_controller:Make;AlbaranesCliente_controller:Make;FacturasCliente_controller:Make;ConCli_FacCli_relation:Make;ConCli_AlbCli_relation:Make;PreCli_ConCli_relation:Make;ConCli_RecCli_relation:Make;ContratosCliente_view:Make;ContratosCliente_plugin:Make;FactuGES:Make;FactuGES_Server:Make;PresupuestosCliente_view:Make;AlbCli_FacCli_relation:Make;FacCli_FacProv_relation:Make;FacturasCliente_view:Make;AlbaranesProveedor_view:Make;PedidosProveedor_model:Make;PedidosProveedor_view:Make;PedProv_AlbProv_relation:Make;AlbaranesProveedor_controller:Make;AlbaranesCliente_view:Make;AlbProv_FacProv_relation:Make;RecibosCliente_controller:Make" /> <CallTarget Targets="Base:Make;GUIBase:Make;ApplicationBase:Make;Contactos_model:Make;Contactos_data:Make;Contactos_controller:Make;Contactos_view:Make;Articulos_data:Make;Articulos_controller:Make;Articulos_view:Make;PresupuestosCliente_model:Make;PresupuestosCliente_controller:Make;ContratosCliente_model:Make;ContratosCliente_data:Make;ContratosCliente_controller:Make;AlbaranesCliente_controller:Make;FacturasCliente_controller:Make;ConCli_FacCli_relation:Make;ConCli_AlbCli_relation:Make;PreCli_ConCli_relation:Make;ConCli_RecCli_relation:Make;ContratosCliente_view:Make;ContratosCliente_plugin:Make;FactuGES:Make;FactuGES_Server:Make;PresupuestosCliente_view:Make;AlbCli_FacCli_relation:Make;FacCli_FacProv_relation:Make;FacturasCliente_view:Make;AlbaranesProveedor_view:Make;PedidosProveedor_model:Make;PedidosProveedor_view:Make;PedProv_AlbProv_relation:Make;AlbaranesProveedor_controller:Make;AlbaranesCliente_view:Make;AlbProv_FacProv_relation:Make;RecibosCliente_controller:Make;PresupuestosCliente_data:Make" />
</Target> </Target>
<Import Condition="Exists('$(MSBuildBinPath)\Borland.Group.Targets')" Project="$(MSBuildBinPath)\Borland.Group.Targets" /> <Import Condition="Exists('$(MSBuildBinPath)\Borland.Group.Targets')" Project="$(MSBuildBinPath)\Borland.Group.Targets" />
</Project> </Project>

View File

@ -38,6 +38,7 @@ type
function Buscar(const ListaID: TIntegerList): IBizContratoCliente; overload; function Buscar(const ListaID: TIntegerList): IBizContratoCliente; overload;
function BuscarTodos: IBizContratoCliente; overload; function BuscarTodos: IBizContratoCliente; overload;
function BuscarTodos(const ID_Cliente: Integer): IBizContratoCliente; overload; function BuscarTodos(const ID_Cliente: Integer): IBizContratoCliente; overload;
function BuscarPendientes : IBizContratoCliente;
procedure Ver(AContrato : IBizContratoCliente); procedure Ver(AContrato : IBizContratoCliente);
procedure VerTodos(AContratos: IBizContratoCliente; procedure VerTodos(AContratos: IBizContratoCliente;
const AVerModal : Boolean = False; const AWindowCaption: String = ''; const AVerModal : Boolean = False; const AWindowCaption: String = '';
@ -55,6 +56,7 @@ type
function Localizar(AContratos: IBizContratoCliente; const ID : Integer): Boolean; function Localizar(AContratos: IBizContratoCliente; const ID : Integer): Boolean;
function ExtraerSeleccionados(AContrato: IBizContratoCliente) : IBizContratoCliente; function ExtraerSeleccionados(AContrato: IBizContratoCliente) : IBizContratoCliente;
function ElegirContratos(AContrato: IBizContratoCliente; AMensaje: String; AMultiSelect: Boolean): IBizContratoCliente; function ElegirContratos(AContrato: IBizContratoCliente; AMensaje: String; AMultiSelect: Boolean): IBizContratoCliente;
function ElegirContratosParaCompras(AContrato: IBizContratoCliente; AMensaje: String; AMultiSelect: Boolean): IBizContratoCliente;
procedure RecalcularImportes(AContrato : IBizContratoCliente); procedure RecalcularImportes(AContrato : IBizContratoCliente);
function EsModificable(AContrato : IBizContratoCliente): Boolean; function EsModificable(AContrato : IBizContratoCliente): Boolean;
@ -82,6 +84,8 @@ type
function MandarFabrica(AContrato: IBizContratoCliente; AClonarContrato: Boolean = true): Boolean; function MandarFabrica(AContrato: IBizContratoCliente; AClonarContrato: Boolean = true): Boolean;
function AceptarContrato(AContrato: IBizContratoCliente): Boolean; function AceptarContrato(AContrato: IBizContratoCliente): Boolean;
function AnadirIncidenciaContrato(AIdContrato: Integer): Boolean; function AnadirIncidenciaContrato(AIdContrato: Integer): Boolean;
function RevisarContratosTerminados(const Ano: String): Boolean;
end; end;
TContratosClienteController = class(TControllerBase, IContratosClienteController) TContratosClienteController = class(TControllerBase, IContratosClienteController)
@ -138,6 +142,7 @@ type
function Buscar(const ID: Integer): IBizContratoCliente; overload; function Buscar(const ID: Integer): IBizContratoCliente; overload;
function BuscarTodos: IBizContratoCliente; overload; function BuscarTodos: IBizContratoCliente; overload;
function BuscarTodos(const ID_Cliente: Integer): IBizContratoCliente; overload; function BuscarTodos(const ID_Cliente: Integer): IBizContratoCliente; overload;
function BuscarPendientes : IBizContratoCliente;
function Nuevo (WithInsert: Boolean = True): IBizContratoCliente; function Nuevo (WithInsert: Boolean = True): IBizContratoCliente;
procedure Ver(AContrato : IBizContratoCliente); procedure Ver(AContrato : IBizContratoCliente);
procedure VerTodos(AContratos: IBizContratoCliente; procedure VerTodos(AContratos: IBizContratoCliente;
@ -147,6 +152,7 @@ type
function ExtraerSeleccionados(AContrato: IBizContratoCliente) : IBizContratoCliente; function ExtraerSeleccionados(AContrato: IBizContratoCliente) : IBizContratoCliente;
function ElegirContratos(AContrato: IBizContratoCliente; AMensaje: String; AMultiSelect: Boolean): IBizContratoCliente; function ElegirContratos(AContrato: IBizContratoCliente; AMensaje: String; AMultiSelect: Boolean): IBizContratoCliente;
function ElegirContratosParaCompras(AContrato: IBizContratoCliente; AMensaje: String; AMultiSelect: Boolean): IBizContratoCliente;
procedure RecalcularImportes(AContrato : IBizContratoCliente); procedure RecalcularImportes(AContrato : IBizContratoCliente);
function EsModificable(AContrato : IBizContratoCliente): Boolean; function EsModificable(AContrato : IBizContratoCliente): Boolean;
@ -174,6 +180,8 @@ type
function MandarFabrica(AContrato: IBizContratoCliente; AClonarContrato: Boolean = true): Boolean; function MandarFabrica(AContrato: IBizContratoCliente; AClonarContrato: Boolean = true): Boolean;
function AceptarContrato(AContrato: IBizContratoCliente): Boolean; function AceptarContrato(AContrato: IBizContratoCliente): Boolean;
function AnadirIncidenciaContrato(AIdContrato: Integer): Boolean; function AnadirIncidenciaContrato(AIdContrato: Integer): Boolean;
function RevisarContratosTerminados(const Ano: String): Boolean;
end; end;
implementation implementation
@ -647,6 +655,29 @@ begin
FiltrarEmpresa(Result); FiltrarEmpresa(Result);
end; end;
function TContratosClienteController.BuscarPendientes: IBizContratoCliente;
var
Condicion: TDAWhereExpression;
begin
ShowHourglassCursor;
try
Result := BuscarTodos;
// Filtrar los presupuesto pendientes de recepcion
with Result.DataTable.DynamicWhere do
begin
// (SITUACION <> RECIBIDO)
Condicion := NewBinaryExpression(NewField('', fld_ContratosClienteSITUACION), NewConstant(SITUACION_CONTRATO_PENDIENTE, datString), dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
finally
HideHourglassCursor;
end;
end;
function TContratosClienteController.BuscarTodos: IBizContratoCliente; function TContratosClienteController.BuscarTodos: IBizContratoCliente;
begin begin
Result := FDataModule.GetItems; Result := FDataModule.GetItems;
@ -1103,6 +1134,28 @@ begin
end; end;
end; end;
function TContratosClienteController.ElegirContratosParaCompras(AContrato: IBizContratoCliente; AMensaje: String;
AMultiSelect: Boolean): IBizContratoCliente;
var
AEditor : IEditorElegirContratosCliente;
begin
Result := NIL;
CreateEditor('EditorElegirContratosClienteParaCompra', IEditorElegirContratosCliente, AEditor);
if Assigned(AEditor) then
try
AEditor.Controller := Self;
AEditor.Contratos := AContrato;
AEditor.MultiSelect := AMultiSelect;
AEditor.Mensaje := AMensaje;
if IsPositiveResult(AEditor.ShowModal) then
Result := AEditor.ContratosClienteSeleccionados;
finally
AEditor.Release;
AEditor := NIL;
end;
end;
function TContratosClienteController.Eliminar(AContrato: IBizContratoCliente; AllItems: Boolean = false): Boolean; function TContratosClienteController.Eliminar(AContrato: IBizContratoCliente; AllItems: Boolean = false): Boolean;
//En el caso de eliminar almenos un elemento del conjunto se devuelve true //En el caso de eliminar almenos un elemento del conjunto se devuelve true
var var
@ -1307,7 +1360,7 @@ end;
procedure TContratosClienteController.RecuperarObjetos(AContrato: IBizContratoCliente); procedure TContratosClienteController.RecuperarObjetos(AContrato: IBizContratoCliente);
begin begin
RecuperarCliente(AContrato); RecuperarCliente(AContrato);
if (AContrato.ENVIADA_REVISADA = 10) then if (AContrato.ENVIADA_REVISADA = CONST_PRESUPUESTO_RECIBIDO_DESDE_WEB_ST) then
MandarFabrica(AContrato, False); MandarFabrica(AContrato, False);
end; end;
@ -1392,6 +1445,11 @@ begin
AFormasPagoController := Nil; AFormasPagoController := Nil;
end; end;
function TContratosClienteController.RevisarContratosTerminados(const Ano: String): Boolean;
begin
Result := FDataModule.RevisarContratosTerminados(AppFactuGES.EmpresaActiva.ID, Ano);
end;
procedure TContratosClienteController.RecuperarCliente(AContrato: IBizContratoCliente); procedure TContratosClienteController.RecuperarCliente(AContrato: IBizContratoCliente);
begin begin
AContrato._Cliente := (FClienteController.Buscar(AContrato.ID_Cliente) as IBizCliente); AContrato._Cliente := (FClienteController.Buscar(AContrato.ID_Cliente) as IBizCliente);
@ -1601,7 +1659,7 @@ begin
if AClonarContrato then if AClonarContrato then
ENVIADA_REVISADA := CONST_CONTRATO_RECIBIDO_UECKO ENVIADA_REVISADA := CONST_CONTRATO_RECIBIDO_UECKO
else else
ENVIADA_REVISADA := CONST_CONTRATO_RECIBIDO_UECKO_DESDE_WEB; ENVIADA_REVISADA := CONST_PRESUPUESTO_RECIBIDO_UECKO_DESDE_WEB;
//En el caso de contrato de presupuestador WEB se cambia constante //En el caso de contrato de presupuestador WEB se cambia constante
if AClonarContrato then if AClonarContrato then

View File

@ -98,7 +98,7 @@ begin
ActualizarDetalles(ADetalles, ACliente.DESCUENTO_LINEA); ActualizarDetalles(ADetalles, ACliente.DESCUENTO_LINEA);
// ShowInfoMessage('Se ha actualizado el descuento para el cliente seleccionado'); // ShowInfoMessage('Se ha actualizado el descuento para el cliente seleccionado');
finally finally
AArticulos := Nil; // AArticulos := Nil;
end; end;
end; end;
end; end;

View File

@ -724,4 +724,42 @@ inherited DataModuleContratosCliente: TDataModuleContratosCliente
Left = 712 Left = 712
Top = 32 Top = 32
end end
object tbl_RevisarContratosTerminados: TDAMemDataTable
RemoteUpdatesOptions = []
Fields = <
item
Name = 'REFERENCIAS_MODIFICADAS'
DataType = datString
Size = 10000
end
item
Name = 'NUM_CONT_MODIF'
DataType = datInteger
end>
Params = <
item
Name = 'FECHA_INI'
Value = ''
end
item
Name = 'FECHA_FIN'
Value = ''
end
item
Name = 'ID_EMPRESA'
Value = ''
end>
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteDataAdapter = rda_ContratosCliente
LogicalName = 'RevisarContratosTerminados'
IndexDefs = <>
Left = 552
Top = 264
end
object ds_RevisarContratosTerminados: TDADataSource
DataSet = tbl_RevisarContratosTerminados.Dataset
DataTable = tbl_RevisarContratosTerminados
Left = 552
Top = 216
end
end end

View File

@ -29,6 +29,8 @@ type
ds_TiposCapitulos: TDADataSource; ds_TiposCapitulos: TDADataSource;
tbl_ContratosClienteBeneficios: TDAMemDataTable; tbl_ContratosClienteBeneficios: TDAMemDataTable;
ds_ContratosClienteBeneficios: TDADataSource; ds_ContratosClienteBeneficios: TDADataSource;
tbl_RevisarContratosTerminados: TDAMemDataTable;
ds_RevisarContratosTerminados: TDADataSource;
procedure DAClientDataModuleCreate(Sender: TObject); procedure DAClientDataModuleCreate(Sender: TObject);
private private
@ -57,6 +59,7 @@ type
function GetAnosItems : TStringList; function GetAnosItems : TStringList;
function GetContratosClienteBeneficios : IBizContratosClienteBeneficios; function GetContratosClienteBeneficios : IBizContratosClienteBeneficios;
function AnadirIncidenciaContrato(const id_contrato: Integer): Boolean; function AnadirIncidenciaContrato(const id_contrato: Integer): Boolean;
function RevisarContratosTerminados(const IDEmpresa: Integer; const Ano: String): Boolean;
end; end;
implementation implementation
@ -120,6 +123,35 @@ begin
Result := GetItem(ID_NULO) Result := GetItem(ID_NULO)
end; end;
function TDataModuleContratosCliente.RevisarContratosTerminados(const IDEmpresa: Integer; const Ano: String): Boolean;
var
AContratosTerminados: TDAMemDataTable;
FechaIni: String;
FechaFin: String;
Cadena: String;
begin
ShowHourglassCursor;
try
FechaIni := '01/01/' + Ano;
FechaFin := '31/12/' + Ano;
AContratosTerminados := CloneDataTable(tbl_RevisarContratosTerminados);
AContratosTerminados.ParamByName('FECHA_INI').AsString := '01/01/2025';
AContratosTerminados.ParamByName('FECHA_FIN').AsString := '31/12/2025';
AContratosTerminados.ParamByName('ID_EMPRESA').AsInteger := IDEmpresa;
AContratosTerminados.Open;
Cadena := AContratosTerminados.FieldByName('NUM_CONT_MODIF').AsString;
Cadena := Cadena + ' contratos terminados: ';
Cadena := Cadena + AContratosTerminados.FieldByName('REFERENCIAS_MODIFICADAS').AsString;
ShowMessage(Cadena);
Result := True;
finally
HideHourglassCursor;
end;
end;
{ {
function TDataModuleContratosCliente.SubirFichero(const ID: Integer; const NombreFichero: String; const Fichero: Binary): Boolean; function TDataModuleContratosCliente.SubirFichero(const ID: Integer; const NombreFichero: String; const Fichero: Binary): Boolean;
begin begin

View File

@ -16,6 +16,7 @@ type
function NewItem : IBizContratoCliente; function NewItem : IBizContratoCliente;
function GetContratosClienteBeneficios : IBizContratosClienteBeneficios; function GetContratosClienteBeneficios : IBizContratosClienteBeneficios;
function AnadirIncidenciaContrato(const id_contrato: Integer): Boolean; function AnadirIncidenciaContrato(const id_contrato: Integer): Boolean;
function RevisarContratosTerminados(const IDEmpresa: Integer; const Ano: String): Boolean;
end; end;
implementation implementation

View File

@ -9,19 +9,21 @@ const
{ Data table rules ids { Data table rules ids
Feel free to change them to something more human readable Feel free to change them to something more human readable
but make sure they are unique in the context of your application } but make sure they are unique in the context of your application }
RID_Valores = '{2D309AB3-F26D-4F77-9E09-6CA7620C0534}'; RID_Valores = '{449077DB-4A8E-495D-A0BD-2FBCE344A200}';
RID_Propiedades = '{CDA8162E-A86C-43C2-8160-1611E65E1B79}'; RID_Propiedades = '{B8C14BE3-F7DA-40FE-AC7C-2E3C14E4DC82}';
RID_ListaAnosContratos = '{26625F4D-4082-4793-9D6D-E82A66988980}'; RID_ListaAnosContratos = '{D8E15212-483A-4B17-8717-C62519A49530}';
RID_ContratosClienteBeneficios = '{A9E9049C-4725-4DB0-8269-176B0DBCB855}'; RID_ContratosClienteBeneficios = '{482CAA2A-EDB5-4DF7-A6E4-3A30F50845DB}';
RID_ContratosCliente = '{BCA303F7-0BDC-4E2D-ADEA-997161746A59}'; RID_RevisarContratosTerminados = '{C26ED646-D46A-4FFB-9114-5ABF26D1C894}';
RID_TiposCapitulos = '{44ABA6A4-B39A-4CC9-8869-853241708F46}'; RID_ContratosCliente = '{4CBF898D-5FAF-4946-AC1F-608027F6E56C}';
RID_ContratosCliente_Detalles = '{6AB8871E-9878-4FD4-ADB5-6C24D4C83745}'; RID_TiposCapitulos = '{D8839C39-62D9-4506-B089-9F54195DFC05}';
RID_ContratosCliente_Detalles = '{888EBC02-027A-42EF-9774-DBB1CA098FA7}';
{ Data table names } { Data table names }
nme_Valores = 'Valores'; nme_Valores = 'Valores';
nme_Propiedades = 'Propiedades'; nme_Propiedades = 'Propiedades';
nme_ListaAnosContratos = 'ListaAnosContratos'; nme_ListaAnosContratos = 'ListaAnosContratos';
nme_ContratosClienteBeneficios = 'ContratosClienteBeneficios'; nme_ContratosClienteBeneficios = 'ContratosClienteBeneficios';
nme_RevisarContratosTerminados = 'RevisarContratosTerminados';
nme_ContratosCliente = 'ContratosCliente'; nme_ContratosCliente = 'ContratosCliente';
nme_TiposCapitulos = 'TiposCapitulos'; nme_TiposCapitulos = 'TiposCapitulos';
nme_ContratosCliente_Detalles = 'ContratosCliente_Detalles'; nme_ContratosCliente_Detalles = 'ContratosCliente_Detalles';
@ -86,6 +88,14 @@ const
idx_ContratosClienteBeneficiosIMPORTE_BENEFICIO_REAL = 13; idx_ContratosClienteBeneficiosIMPORTE_BENEFICIO_REAL = 13;
idx_ContratosClienteBeneficiosPORCENTAJE_BENEFICIO_REAL = 14; idx_ContratosClienteBeneficiosPORCENTAJE_BENEFICIO_REAL = 14;
{ RevisarContratosTerminados fields }
fld_RevisarContratosTerminadosREFERENCIAS_MODIFICADAS = 'REFERENCIAS_MODIFICADAS';
fld_RevisarContratosTerminadosNUM_CONT_MODIF = 'NUM_CONT_MODIF';
{ RevisarContratosTerminados field indexes }
idx_RevisarContratosTerminadosREFERENCIAS_MODIFICADAS = 0;
idx_RevisarContratosTerminadosNUM_CONT_MODIF = 1;
{ ContratosCliente fields } { ContratosCliente fields }
fld_ContratosClienteID = 'ID'; fld_ContratosClienteID = 'ID';
fld_ContratosClienteID_EMPRESA = 'ID_EMPRESA'; fld_ContratosClienteID_EMPRESA = 'ID_EMPRESA';
@ -293,7 +303,7 @@ const
type type
{ IValores } { IValores }
IValores = interface(IDAStronglyTypedDataTable) IValores = interface(IDAStronglyTypedDataTable)
['{42A9D440-7427-4615-9941-BAD61DE3F24D}'] ['{74023DE8-DA34-40C9-8D30-8D95849B47F5}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -352,7 +362,7 @@ type
{ IPropiedades } { IPropiedades }
IPropiedades = interface(IDAStronglyTypedDataTable) IPropiedades = interface(IDAStronglyTypedDataTable)
['{DAE036DD-692B-476F-B79E-C1D9BD20FC8F}'] ['{8E8718A2-101B-44D5-85BB-7C8010CD29C4}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -411,7 +421,7 @@ type
{ IListaAnosContratos } { IListaAnosContratos }
IListaAnosContratos = interface(IDAStronglyTypedDataTable) IListaAnosContratos = interface(IDAStronglyTypedDataTable)
['{E545B154-B154-44B3-83CF-079BD402234B}'] ['{C219B51A-9634-41C7-9B62-997F971C4EE8}']
{ Property getters and setters } { Property getters and setters }
function GetANOValue: String; function GetANOValue: String;
procedure SetANOValue(const aValue: String); procedure SetANOValue(const aValue: String);
@ -446,7 +456,7 @@ type
{ IContratosClienteBeneficios } { IContratosClienteBeneficios }
IContratosClienteBeneficios = interface(IDAStronglyTypedDataTable) IContratosClienteBeneficios = interface(IDAStronglyTypedDataTable)
['{485B17EC-9EB8-4EA9-B53B-18FA77E4F004}'] ['{2484BF45-5ADE-4EC9-B04C-CBCA08948BFE}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -647,9 +657,56 @@ type
end; end;
{ IRevisarContratosTerminados }
IRevisarContratosTerminados = interface(IDAStronglyTypedDataTable)
['{0C3A779B-207C-4843-909E-545B77CC0304}']
{ Property getters and setters }
function GetREFERENCIAS_MODIFICADASValue: String;
procedure SetREFERENCIAS_MODIFICADASValue(const aValue: String);
function GetREFERENCIAS_MODIFICADASIsNull: Boolean;
procedure SetREFERENCIAS_MODIFICADASIsNull(const aValue: Boolean);
function GetNUM_CONT_MODIFValue: Integer;
procedure SetNUM_CONT_MODIFValue(const aValue: Integer);
function GetNUM_CONT_MODIFIsNull: Boolean;
procedure SetNUM_CONT_MODIFIsNull(const aValue: Boolean);
{ Properties }
property REFERENCIAS_MODIFICADAS: String read GetREFERENCIAS_MODIFICADASValue write SetREFERENCIAS_MODIFICADASValue;
property REFERENCIAS_MODIFICADASIsNull: Boolean read GetREFERENCIAS_MODIFICADASIsNull write SetREFERENCIAS_MODIFICADASIsNull;
property NUM_CONT_MODIF: Integer read GetNUM_CONT_MODIFValue write SetNUM_CONT_MODIFValue;
property NUM_CONT_MODIFIsNull: Boolean read GetNUM_CONT_MODIFIsNull write SetNUM_CONT_MODIFIsNull;
end;
{ TRevisarContratosTerminadosDataTableRules }
TRevisarContratosTerminadosDataTableRules = class(TIntfObjectDADataTableRules, IRevisarContratosTerminados)
private
protected
{ Property getters and setters }
function GetREFERENCIAS_MODIFICADASValue: String; virtual;
procedure SetREFERENCIAS_MODIFICADASValue(const aValue: String); virtual;
function GetREFERENCIAS_MODIFICADASIsNull: Boolean; virtual;
procedure SetREFERENCIAS_MODIFICADASIsNull(const aValue: Boolean); virtual;
function GetNUM_CONT_MODIFValue: Integer; virtual;
procedure SetNUM_CONT_MODIFValue(const aValue: Integer); virtual;
function GetNUM_CONT_MODIFIsNull: Boolean; virtual;
procedure SetNUM_CONT_MODIFIsNull(const aValue: Boolean); virtual;
{ Properties }
property REFERENCIAS_MODIFICADAS: String read GetREFERENCIAS_MODIFICADASValue write SetREFERENCIAS_MODIFICADASValue;
property REFERENCIAS_MODIFICADASIsNull: Boolean read GetREFERENCIAS_MODIFICADASIsNull write SetREFERENCIAS_MODIFICADASIsNull;
property NUM_CONT_MODIF: Integer read GetNUM_CONT_MODIFValue write SetNUM_CONT_MODIFValue;
property NUM_CONT_MODIFIsNull: Boolean read GetNUM_CONT_MODIFIsNull write SetNUM_CONT_MODIFIsNull;
public
constructor Create(aDataTable: TDADataTable); override;
destructor Destroy; override;
end;
{ IContratosCliente } { IContratosCliente }
IContratosCliente = interface(IDAStronglyTypedDataTable) IContratosCliente = interface(IDAStronglyTypedDataTable)
['{BC35BB6D-75FF-4DDA-A704-A0B70347E16B}'] ['{31AD19F0-A010-411E-9B69-B5525F49F549}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -1527,7 +1584,7 @@ type
} }
{ ITiposCapitulos } { ITiposCapitulos }
ITiposCapitulos = interface(IDAStronglyTypedDataTable) ITiposCapitulos = interface(IDAStronglyTypedDataTable)
['{ABE3E0C6-0566-42D9-BEBC-07769F25A890}'] ['{C8E4A276-520A-426B-81CE-2F25D26C2DB7}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -1622,7 +1679,7 @@ type
{ IContratosCliente_Detalles } { IContratosCliente_Detalles }
IContratosCliente_Detalles = interface(IDAStronglyTypedDataTable) IContratosCliente_Detalles = interface(IDAStronglyTypedDataTable)
['{CF6A5940-C4C5-454F-BDD2-C37AD36C2D04}'] ['{F5D71D23-745C-4822-A313-52B50D3C517B}']
{ Property getters and setters } { Property getters and setters }
function GetIDValue: Integer; function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer); procedure SetIDValue(const aValue: Integer);
@ -2385,6 +2442,60 @@ begin
end; end;
{ TRevisarContratosTerminadosDataTableRules }
constructor TRevisarContratosTerminadosDataTableRules.Create(aDataTable: TDADataTable);
begin
inherited;
end;
destructor TRevisarContratosTerminadosDataTableRules.Destroy;
begin
inherited;
end;
function TRevisarContratosTerminadosDataTableRules.GetREFERENCIAS_MODIFICADASValue: String;
begin
result := DataTable.Fields[idx_RevisarContratosTerminadosREFERENCIAS_MODIFICADAS].AsString;
end;
procedure TRevisarContratosTerminadosDataTableRules.SetREFERENCIAS_MODIFICADASValue(const aValue: String);
begin
DataTable.Fields[idx_RevisarContratosTerminadosREFERENCIAS_MODIFICADAS].AsString := aValue;
end;
function TRevisarContratosTerminadosDataTableRules.GetREFERENCIAS_MODIFICADASIsNull: boolean;
begin
result := DataTable.Fields[idx_RevisarContratosTerminadosREFERENCIAS_MODIFICADAS].IsNull;
end;
procedure TRevisarContratosTerminadosDataTableRules.SetREFERENCIAS_MODIFICADASIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_RevisarContratosTerminadosREFERENCIAS_MODIFICADAS].AsVariant := Null;
end;
function TRevisarContratosTerminadosDataTableRules.GetNUM_CONT_MODIFValue: Integer;
begin
result := DataTable.Fields[idx_RevisarContratosTerminadosNUM_CONT_MODIF].AsInteger;
end;
procedure TRevisarContratosTerminadosDataTableRules.SetNUM_CONT_MODIFValue(const aValue: Integer);
begin
DataTable.Fields[idx_RevisarContratosTerminadosNUM_CONT_MODIF].AsInteger := aValue;
end;
function TRevisarContratosTerminadosDataTableRules.GetNUM_CONT_MODIFIsNull: boolean;
begin
result := DataTable.Fields[idx_RevisarContratosTerminadosNUM_CONT_MODIF].IsNull;
end;
procedure TRevisarContratosTerminadosDataTableRules.SetNUM_CONT_MODIFIsNull(const aValue: Boolean);
begin
if aValue then
DataTable.Fields[idx_RevisarContratosTerminadosNUM_CONT_MODIF].AsVariant := Null;
end;
{ TContratosClienteDataTableRules } { TContratosClienteDataTableRules }
constructor TContratosClienteDataTableRules.Create(aDataTable: TDADataTable); constructor TContratosClienteDataTableRules.Create(aDataTable: TDADataTable);
var var
@ -4464,6 +4575,7 @@ initialization
RegisterDataTableRules(RID_Propiedades, TPropiedadesDataTableRules); RegisterDataTableRules(RID_Propiedades, TPropiedadesDataTableRules);
RegisterDataTableRules(RID_ListaAnosContratos, TListaAnosContratosDataTableRules); RegisterDataTableRules(RID_ListaAnosContratos, TListaAnosContratosDataTableRules);
RegisterDataTableRules(RID_ContratosClienteBeneficios, TContratosClienteBeneficiosDataTableRules); RegisterDataTableRules(RID_ContratosClienteBeneficios, TContratosClienteBeneficiosDataTableRules);
RegisterDataTableRules(RID_RevisarContratosTerminados, TRevisarContratosTerminadosDataTableRules);
RegisterDataTableRules(RID_ContratosCliente, TContratosClienteDataTableRules); RegisterDataTableRules(RID_ContratosCliente, TContratosClienteDataTableRules);
RegisterDataTableRules(RID_TiposCapitulos, TTiposCapitulosDataTableRules); RegisterDataTableRules(RID_TiposCapitulos, TTiposCapitulosDataTableRules);
RegisterDataTableRules(RID_ContratosCliente_Detalles, TContratosCliente_DetallesDataTableRules); RegisterDataTableRules(RID_ContratosCliente_Detalles, TContratosCliente_DetallesDataTableRules);

View File

@ -9,18 +9,19 @@ const
{ Delta rules ids { Delta rules ids
Feel free to change them to something more human readable Feel free to change them to something more human readable
but make sure they are unique in the context of your application } but make sure they are unique in the context of your application }
RID_ValoresDelta = '{473FE23F-233A-4334-AA5D-DEBDC818CAD6}'; RID_ValoresDelta = '{53927053-5B9C-420E-869B-E4859BC566C2}';
RID_PropiedadesDelta = '{268881CE-E2C7-42D0-9BD1-36FA949D98CB}'; RID_PropiedadesDelta = '{9C0E4AE7-8283-4E08-9A5D-4DD599EB4A87}';
RID_ListaAnosContratosDelta = '{E7D06B88-F7AB-45DE-99BA-B358710FD5EC}'; RID_ListaAnosContratosDelta = '{4E603994-388B-4817-A281-9CE6BC8C4836}';
RID_ContratosClienteBeneficiosDelta = '{B8458008-73A7-41D2-8637-E98C753234F0}'; RID_ContratosClienteBeneficiosDelta = '{C2734792-1711-4F25-A7E4-F6A4E8DFE7F7}';
RID_ContratosClienteDelta = '{0FF43F59-671C-4BBC-AD27-CD2C3D04FF13}'; RID_RevisarContratosTerminadosDelta = '{C8885AF8-3A6B-475F-885B-7E09FD70B8F4}';
RID_TiposCapitulosDelta = '{B43B00CF-0450-4BB8-9B2D-AED17652906B}'; RID_ContratosClienteDelta = '{56A458E8-2C32-4EC7-AE69-43CE1D9D7DC4}';
RID_ContratosCliente_DetallesDelta = '{8BDA75BE-71A6-460A-A8F7-933DD660440C}'; RID_TiposCapitulosDelta = '{8376BFFA-46A3-4286-956F-1C50A09A89EF}';
RID_ContratosCliente_DetallesDelta = '{8B0DD083-BB6E-4E26-9585-E0F69BA9C7EE}';
type type
{ IValoresDelta } { IValoresDelta }
IValoresDelta = interface(IValores) IValoresDelta = interface(IValores)
['{473FE23F-233A-4334-AA5D-DEBDC818CAD6}'] ['{53927053-5B9C-420E-869B-E4859BC566C2}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_PROPIEDADValue : Integer; function GetOldID_PROPIEDADValue : Integer;
@ -78,7 +79,7 @@ type
{ IPropiedadesDelta } { IPropiedadesDelta }
IPropiedadesDelta = interface(IPropiedades) IPropiedadesDelta = interface(IPropiedades)
['{268881CE-E2C7-42D0-9BD1-36FA949D98CB}'] ['{9C0E4AE7-8283-4E08-9A5D-4DD599EB4A87}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldDESCRIPCIONValue : String; function GetOldDESCRIPCIONValue : String;
@ -136,7 +137,7 @@ type
{ IListaAnosContratosDelta } { IListaAnosContratosDelta }
IListaAnosContratosDelta = interface(IListaAnosContratos) IListaAnosContratosDelta = interface(IListaAnosContratos)
['{E7D06B88-F7AB-45DE-99BA-B358710FD5EC}'] ['{4E603994-388B-4817-A281-9CE6BC8C4836}']
{ Property getters and setters } { Property getters and setters }
function GetOldANOValue : String; function GetOldANOValue : String;
@ -170,7 +171,7 @@ type
{ IContratosClienteBeneficiosDelta } { IContratosClienteBeneficiosDelta }
IContratosClienteBeneficiosDelta = interface(IContratosClienteBeneficios) IContratosClienteBeneficiosDelta = interface(IContratosClienteBeneficios)
['{B8458008-73A7-41D2-8637-E98C753234F0}'] ['{C2734792-1711-4F25-A7E4-F6A4E8DFE7F7}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldREFERENCIAValue : String; function GetOldREFERENCIAValue : String;
@ -370,9 +371,55 @@ type
end; end;
{ IRevisarContratosTerminadosDelta }
IRevisarContratosTerminadosDelta = interface(IRevisarContratosTerminados)
['{C8885AF8-3A6B-475F-885B-7E09FD70B8F4}']
{ Property getters and setters }
function GetOldREFERENCIAS_MODIFICADASValue : String;
function GetOldNUM_CONT_MODIFValue : Integer;
{ Properties }
property OldREFERENCIAS_MODIFICADAS : String read GetOldREFERENCIAS_MODIFICADASValue;
property OldNUM_CONT_MODIF : Integer read GetOldNUM_CONT_MODIFValue;
end;
{ TRevisarContratosTerminadosBusinessProcessorRules }
TRevisarContratosTerminadosBusinessProcessorRules = class(TDABusinessProcessorRules, IRevisarContratosTerminados, IRevisarContratosTerminadosDelta)
private
protected
{ Property getters and setters }
function GetREFERENCIAS_MODIFICADASValue: String; virtual;
function GetREFERENCIAS_MODIFICADASIsNull: Boolean; virtual;
function GetOldREFERENCIAS_MODIFICADASValue: String; virtual;
function GetOldREFERENCIAS_MODIFICADASIsNull: Boolean; virtual;
procedure SetREFERENCIAS_MODIFICADASValue(const aValue: String); virtual;
procedure SetREFERENCIAS_MODIFICADASIsNull(const aValue: Boolean); virtual;
function GetNUM_CONT_MODIFValue: Integer; virtual;
function GetNUM_CONT_MODIFIsNull: Boolean; virtual;
function GetOldNUM_CONT_MODIFValue: Integer; virtual;
function GetOldNUM_CONT_MODIFIsNull: Boolean; virtual;
procedure SetNUM_CONT_MODIFValue(const aValue: Integer); virtual;
procedure SetNUM_CONT_MODIFIsNull(const aValue: Boolean); virtual;
{ Properties }
property REFERENCIAS_MODIFICADAS : String read GetREFERENCIAS_MODIFICADASValue write SetREFERENCIAS_MODIFICADASValue;
property REFERENCIAS_MODIFICADASIsNull : Boolean read GetREFERENCIAS_MODIFICADASIsNull write SetREFERENCIAS_MODIFICADASIsNull;
property OldREFERENCIAS_MODIFICADAS : String read GetOldREFERENCIAS_MODIFICADASValue;
property OldREFERENCIAS_MODIFICADASIsNull : Boolean read GetOldREFERENCIAS_MODIFICADASIsNull;
property NUM_CONT_MODIF : Integer read GetNUM_CONT_MODIFValue write SetNUM_CONT_MODIFValue;
property NUM_CONT_MODIFIsNull : Boolean read GetNUM_CONT_MODIFIsNull write SetNUM_CONT_MODIFIsNull;
property OldNUM_CONT_MODIF : Integer read GetOldNUM_CONT_MODIFValue;
property OldNUM_CONT_MODIFIsNull : Boolean read GetOldNUM_CONT_MODIFIsNull;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
destructor Destroy; override;
end;
{ IContratosClienteDelta } { IContratosClienteDelta }
IContratosClienteDelta = interface(IContratosCliente) IContratosClienteDelta = interface(IContratosCliente)
['{0FF43F59-671C-4BBC-AD27-CD2C3D04FF13}'] ['{56A458E8-2C32-4EC7-AE69-43CE1D9D7DC4}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer; function GetOldID_EMPRESAValue : Integer;
@ -1250,7 +1297,7 @@ type
{ ITiposCapitulosDelta } { ITiposCapitulosDelta }
ITiposCapitulosDelta = interface(ITiposCapitulos) ITiposCapitulosDelta = interface(ITiposCapitulos)
['{B43B00CF-0450-4BB8-9B2D-AED17652906B}'] ['{8376BFFA-46A3-4286-956F-1C50A09A89EF}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldPOSICIONValue : Integer; function GetOldPOSICIONValue : Integer;
@ -1344,7 +1391,7 @@ type
{ IContratosCliente_DetallesDelta } { IContratosCliente_DetallesDelta }
IContratosCliente_DetallesDelta = interface(IContratosCliente_Detalles) IContratosCliente_DetallesDelta = interface(IContratosCliente_Detalles)
['{8BDA75BE-71A6-460A-A8F7-933DD660440C}'] ['{8B0DD083-BB6E-4E26-9585-E0F69BA9C7EE}']
{ Property getters and setters } { Property getters and setters }
function GetOldIDValue : Integer; function GetOldIDValue : Integer;
function GetOldID_CONTRATOValue : Integer; function GetOldID_CONTRATOValue : Integer;
@ -2327,6 +2374,80 @@ begin
end; end;
{ TRevisarContratosTerminadosBusinessProcessorRules }
constructor TRevisarContratosTerminadosBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
begin
inherited;
end;
destructor TRevisarContratosTerminadosBusinessProcessorRules.Destroy;
begin
inherited;
end;
function TRevisarContratosTerminadosBusinessProcessorRules.GetREFERENCIAS_MODIFICADASValue: String;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_RevisarContratosTerminadosREFERENCIAS_MODIFICADAS];
end;
function TRevisarContratosTerminadosBusinessProcessorRules.GetREFERENCIAS_MODIFICADASIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_RevisarContratosTerminadosREFERENCIAS_MODIFICADAS]);
end;
function TRevisarContratosTerminadosBusinessProcessorRules.GetOldREFERENCIAS_MODIFICADASValue: String;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_RevisarContratosTerminadosREFERENCIAS_MODIFICADAS];
end;
function TRevisarContratosTerminadosBusinessProcessorRules.GetOldREFERENCIAS_MODIFICADASIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_RevisarContratosTerminadosREFERENCIAS_MODIFICADAS]);
end;
procedure TRevisarContratosTerminadosBusinessProcessorRules.SetREFERENCIAS_MODIFICADASValue(const aValue: String);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_RevisarContratosTerminadosREFERENCIAS_MODIFICADAS] := aValue;
end;
procedure TRevisarContratosTerminadosBusinessProcessorRules.SetREFERENCIAS_MODIFICADASIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_RevisarContratosTerminadosREFERENCIAS_MODIFICADAS] := Null;
end;
function TRevisarContratosTerminadosBusinessProcessorRules.GetNUM_CONT_MODIFValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_RevisarContratosTerminadosNUM_CONT_MODIF];
end;
function TRevisarContratosTerminadosBusinessProcessorRules.GetNUM_CONT_MODIFIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_RevisarContratosTerminadosNUM_CONT_MODIF]);
end;
function TRevisarContratosTerminadosBusinessProcessorRules.GetOldNUM_CONT_MODIFValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_RevisarContratosTerminadosNUM_CONT_MODIF];
end;
function TRevisarContratosTerminadosBusinessProcessorRules.GetOldNUM_CONT_MODIFIsNull: Boolean;
begin
result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_RevisarContratosTerminadosNUM_CONT_MODIF]);
end;
procedure TRevisarContratosTerminadosBusinessProcessorRules.SetNUM_CONT_MODIFValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_RevisarContratosTerminadosNUM_CONT_MODIF] := aValue;
end;
procedure TRevisarContratosTerminadosBusinessProcessorRules.SetNUM_CONT_MODIFIsNull(const aValue: Boolean);
begin
if aValue then
BusinessProcessor.CurrentChange.NewValueByName[fld_RevisarContratosTerminadosNUM_CONT_MODIF] := Null;
end;
{ TContratosClienteBusinessProcessorRules } { TContratosClienteBusinessProcessorRules }
constructor TContratosClienteBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); constructor TContratosClienteBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
var var
@ -5370,6 +5491,7 @@ initialization
RegisterBusinessProcessorRules(RID_PropiedadesDelta, TPropiedadesBusinessProcessorRules); RegisterBusinessProcessorRules(RID_PropiedadesDelta, TPropiedadesBusinessProcessorRules);
RegisterBusinessProcessorRules(RID_ListaAnosContratosDelta, TListaAnosContratosBusinessProcessorRules); RegisterBusinessProcessorRules(RID_ListaAnosContratosDelta, TListaAnosContratosBusinessProcessorRules);
RegisterBusinessProcessorRules(RID_ContratosClienteBeneficiosDelta, TContratosClienteBeneficiosBusinessProcessorRules); RegisterBusinessProcessorRules(RID_ContratosClienteBeneficiosDelta, TContratosClienteBeneficiosBusinessProcessorRules);
RegisterBusinessProcessorRules(RID_RevisarContratosTerminadosDelta, TRevisarContratosTerminadosBusinessProcessorRules);
RegisterBusinessProcessorRules(RID_ContratosClienteDelta, TContratosClienteBusinessProcessorRules); RegisterBusinessProcessorRules(RID_ContratosClienteDelta, TContratosClienteBusinessProcessorRules);
RegisterBusinessProcessorRules(RID_TiposCapitulosDelta, TTiposCapitulosBusinessProcessorRules); RegisterBusinessProcessorRules(RID_TiposCapitulosDelta, TTiposCapitulosBusinessProcessorRules);
RegisterBusinessProcessorRules(RID_ContratosCliente_DetallesDelta, TContratosCliente_DetallesBusinessProcessorRules); RegisterBusinessProcessorRules(RID_ContratosCliente_DetallesDelta, TContratosCliente_DetallesBusinessProcessorRules);

View File

@ -14,9 +14,11 @@ const
CONST_CONTRATO_DEFAULT = 0; CONST_CONTRATO_DEFAULT = 0;
CONST_CONTRATO_ENVIADO_UECKO = 1; CONST_CONTRATO_ENVIADO_UECKO = 1;
CONST_CONTRATO_RECIBIDO_UECKO = 2; CONST_CONTRATO_RECIBIDO_UECKO = 2;
CONST_CONTRATO_RECIBIDO_UECKO_DESDE_WEB = 11;
CONST_CONTRATO_ACEPTADO_UECKO = 3; CONST_CONTRATO_ACEPTADO_UECKO = 3;
CONST_PRESUPUESTO_RECIBIDO_DESDE_WEB_ST = 10; //10 - contrato recibido en uecko desde web - sin recalcular en base al cliente
CONST_PRESUPUESTO_RECIBIDO_UECKO_DESDE_WEB = 11; //11 - contrato recibido en uecko desde web - recalculado en base al cliente
CTE_EMPRESA_FABRICA = 1; CTE_EMPRESA_FABRICA = 1;
SITUACION_CONTRATO_PENDIENTE = 'PENDIENTE'; SITUACION_CONTRATO_PENDIENTE = 'PENDIENTE';
SITUACION_CONTRATO_TERMINADO = 'TERMINADO'; SITUACION_CONTRATO_TERMINADO = 'TERMINADO';

View File

@ -2,8 +2,8 @@ object RptContratosCliente: TRptContratosCliente
OldCreateOrder = True OldCreateOrder = True
OnCreate = DataModuleCreate OnCreate = DataModuleCreate
OnDestroy = DataModuleDestroy OnDestroy = DataModuleDestroy
Height = 584 Height = 593
Width = 869 Width = 1031
object DADSCabecera: TDADataSource object DADSCabecera: TDADataSource
DataSet = tbl_Cabecera.Dataset DataSet = tbl_Cabecera.Dataset
DataTable = tbl_Cabecera DataTable = tbl_Cabecera
@ -17,29 +17,135 @@ object RptContratosCliente: TRptContratosCliente
Top = 72 Top = 72
end end
object frxBarCodeObject1: TfrxBarCodeObject object frxBarCodeObject1: TfrxBarCodeObject
Left = 528 Left = 184
Top = 488 Top = 528
end end
object frxOLEObject1: TfrxOLEObject object frxOLEObject1: TfrxOLEObject
Left = 400 Left = 56
Top = 488 Top = 528
end end
object frxCrossObject1: TfrxCrossObject object frxCrossObject1: TfrxCrossObject
Left = 400 Left = 56
Top = 440 Top = 480
end end
object frxCheckBoxObject1: TfrxCheckBoxObject object frxCheckBoxObject1: TfrxCheckBoxObject
Left = 464 Left = 120
Top = 488 Top = 528
end end
object frxGradientObject1: TfrxGradientObject object frxGradientObject1: TfrxGradientObject
Left = 464 Left = 120
Top = 440 Top = 480
end end
object schReport: TDASchema object schReport: TDASchema
ConnectionManager = dmServer.ConnectionManager ConnectionManager = dmServer.ConnectionManager
DataDictionary = DataDictionary DataDictionary = DataDictionary
Datasets = < Datasets = <
item
Params = <
item
Name = 'ID_EMPRESA'
Value = ''
end
item
Name = 'FECHAINI'
Value = ''
end
item
Name = 'FECHAFIN'
Value = ''
end>
Statements = <
item
ConnectionType = 'Interbase'
Default = True
Name = 'IBX'
SQL =
'select FCD.ID_ARTICULO, A.REFERENCIA, (COALESCE(FCD.PROPIEDAD,'#39#39 +
') || FCD.CONCEPTO) CONCEPTO, COALESCE(A.FAMILIA,'#39#39') || '#39' '#39' || CO' +
'ALESCE(A.referencia_prov,'#39#39') || '#39' '#39' || COALESCE(A.DESCRIPCION,'#39#39 +
') ARTICULO,'#10'avg(coalesce(FCD.importe_unidad,0)) importe_medio_un' +
'idad, sum(coalesce(FCD.cantidad,0)) CANTIDAD, avg(coalesce(FCD.i' +
'mporte_unidad,0))*sum(coalesce(FCD.cantidad,0)) importe_medio_to' +
'tal,'#10'sum(coalesce(FCD.importe_unidad,0)) importe_real_total'#10'from' +
' contratos_cliente_detalles FCD'#10'inner join contratos_cliente FC ' +
'on (FC.ID = FCD.ID_CONTRATO)'#10'left join contactos AGENTES on (AGE' +
'NTES.ID = FC.ID_AGENTE)'#10'inner join articulos A on (A.ID = FCD.ID' +
'_ARTICULO)'#10'where {where}'#10'and FC.ID_EMPRESA = :ID_EMPRESA'#10'and FC.' +
'FECHA_CONTRATO between :FECHAINI and :FECHAFIN'#10'and FCD.id_articu' +
'lo > 1'#10'and A.COMISIONABLE = 1'#10#10'GROUP BY 1,2,3,4'#10'order by 6 DESC'#10
StatementType = stSQL
ColumnMappings = <
item
DatasetField = 'ID_ARTICULO'
TableField = 'ID_ARTICULO'
end
item
DatasetField = 'CONCEPTO'
TableField = 'CONCEPTO'
end
item
DatasetField = 'IMPORTE_MEDIO_UNIDAD'
TableField = 'IMPORTE_MEDIO_UNIDAD'
end
item
DatasetField = 'CANTIDAD'
TableField = 'CANTIDAD'
end
item
DatasetField = 'IMPORTE_MEDIO_TOTAL'
TableField = 'IMPORTE_MEDIO_TOTAL'
end
item
DatasetField = 'IMPORTE_REAL_TOTAL'
TableField = 'IMPORTE_REAL_TOTAL'
end
item
DatasetField = 'ARTICULO'
TableField = 'ARTICULO'
end
item
DatasetField = 'REFERENCIA'
TableField = 'REFERENCIA'
end>
end>
Name = 'InformeVentasArticulos'
Fields = <
item
Name = 'ID_ARTICULO'
DataType = datInteger
end
item
Name = 'REFERENCIA'
DataType = datString
Size = 255
end
item
Name = 'CONCEPTO'
DataType = datString
Size = 2255
end
item
Name = 'ARTICULO'
DataType = datString
Size = 767
end
item
Name = 'IMPORTE_MEDIO_UNIDAD'
DataType = datCurrency
end
item
Name = 'CANTIDAD'
DataType = datCurrency
end
item
Name = 'IMPORTE_MEDIO_TOTAL'
DataType = datCurrency
end
item
Name = 'IMPORTE_REAL_TOTAL'
DataType = datCurrency
end>
end
item item
Params = <> Params = <>
Statements = < Statements = <
@ -852,6 +958,10 @@ object RptContratosCliente: TRptContratosCliente
item item
DatasetField = 'CONCEPTO_EN' DatasetField = 'CONCEPTO_EN'
TableField = 'CONCEPTO_EN' TableField = 'CONCEPTO_EN'
end
item
DatasetField = 'CONCEPTO_FR'
TableField = 'CONCEPTO_FR'
end> end>
end> end>
Name = 'Informe_Capitulos_Detalles' Name = 'Informe_Capitulos_Detalles'
@ -901,6 +1011,11 @@ object RptContratosCliente: TRptContratosCliente
DataType = datString DataType = datString
Size = 2000 Size = 2000
end end
item
Name = 'CONCEPTO_FR'
DataType = datString
Size = 2000
end
item item
Name = 'CANTIDAD' Name = 'CANTIDAD'
DataType = datCurrency DataType = datCurrency
@ -1136,6 +1251,304 @@ object RptContratosCliente: TRptContratosCliente
Name = 'IMPORTE_TOTAL' Name = 'IMPORTE_TOTAL'
DataType = datCurrency DataType = datCurrency
end> end>
end
item
Params = <
item
Name = 'ID_EMPRESA'
Value = ''
ParamType = daptInput
end
item
Name = 'FECHAINI'
Value = ''
ParamType = daptInput
end
item
Name = 'FECHAFIN'
Value = ''
ParamType = daptInput
end>
Statements = <
item
ConnectionType = 'Interbase'
Default = True
SQL =
'select FC.ID_AGENTE, FCD.ID_ARTICULO, A.REFERENCIA, (COALESCE(FC' +
'D.PROPIEDAD,'#39#39') || FCD.CONCEPTO) CONCEPTO, COALESCE(A.FAMILIA,'#39#39 +
') || '#39' '#39' || COALESCE(A.referencia_prov,'#39#39') || '#39' '#39' || COALESCE(A.' +
'DESCRIPCION,'#39#39') ARTICULO,'#10'avg(coalesce(FCD.importe_unidad,0)) im' +
'porte_medio_unidad, sum(coalesce(FCD.cantidad,0)) CANTIDAD, avg(' +
'coalesce(FCD.importe_unidad,0))*sum(coalesce(FCD.cantidad,0)) im' +
'porte_medio_total,'#10'sum(coalesce(FCD.importe_total,0)) importe_re' +
'al_total'#10'from contratos_cliente_detalles FCD'#10'inner join contrato' +
's_cliente FC on (FC.ID = FCD.ID_CONTRATO)'#10'left join contactos AG' +
'ENTES on (AGENTES.ID = FC.ID_AGENTE)'#10'inner join articulos A on (' +
'A.ID = FCD.ID_ARTICULO)'#10'where {where}'#10'and FC.ID_EMPRESA = :ID_EM' +
'PRESA'#10'and FC.FECHA_CONTRATO between :FECHAINI and :FECHAFIN'#10'and ' +
'FCD.id_articulo > 1'#10'and A.COMISIONABLE = 1'#10#10'GROUP BY 1,2,3,4,5'#10'o' +
'rder by 7 DESC'#10
StatementType = stSQL
ColumnMappings = <
item
DatasetField = 'ID_ARTICULO'
TableField = 'ID_ARTICULO'
end
item
DatasetField = 'CONCEPTO'
TableField = 'CONCEPTO'
end
item
DatasetField = 'IMPORTE_MEDIO_UNIDAD'
TableField = 'IMPORTE_MEDIO_UNIDAD'
end
item
DatasetField = 'CANTIDAD'
TableField = 'CANTIDAD'
end
item
DatasetField = 'IMPORTE_MEDIO_TOTAL'
TableField = 'IMPORTE_MEDIO_TOTAL'
end
item
DatasetField = 'IMPORTE_REAL_TOTAL'
TableField = 'IMPORTE_REAL_TOTAL'
end
item
DatasetField = 'ARTICULO'
TableField = 'ARTICULO'
end
item
DatasetField = 'REFERENCIA'
TableField = 'REFERENCIA'
end
item
DatasetField = 'ID_AGENTE'
TableField = 'ID_AGENTE'
end>
end>
Name = 'InformeVentasArticulosComercial'
Fields = <
item
Name = 'ID_AGENTE'
DataType = datInteger
end
item
Name = 'ID_ARTICULO'
DataType = datInteger
end
item
Name = 'REFERENCIA'
DataType = datString
Size = 255
end
item
Name = 'CONCEPTO'
DataType = datString
Size = 2255
end
item
Name = 'ARTICULO'
DataType = datString
Size = 767
end
item
Name = 'IMPORTE_MEDIO_UNIDAD'
DataType = datCurrency
end
item
Name = 'CANTIDAD'
DataType = datCurrency
end
item
Name = 'IMPORTE_MEDIO_TOTAL'
DataType = datCurrency
end
item
Name = 'IMPORTE_REAL_TOTAL'
DataType = datCurrency
end>
end
item
Params = <>
Statements = <
item
ConnectionType = 'Interbase'
Default = True
SQL =
'select FC.ID_EMPRESA, FC.ID_AGENTE, AGENTES.NOMBRE, sum(coalesc' +
'e(FCD.cantidad,0)) unidades_vendidas, sum(coalesce(FCD.importe_t' +
'otal,0)) importe_total_unidades'#10'from contratos_cliente_detalles ' +
'FCD'#10'inner join contratos_cliente FC on (FC.ID = FCD.ID_CONTRATO)' +
#10'left join contactos AGENTES on (AGENTES.ID = FC.ID_AGENTE)'#10'inne' +
'r join articulos A on (A.ID = FCD.ID_ARTICULO)'#10'where {where}'#10'and' +
' FCD.id_articulo > 1'#10'and FC.id_agente > 0'#10'and A.COMISIONABLE = 1' +
#10'GROUP BY 1,2,3'#10'order by 5 DESC'#10'rows 1 to 10'#10#10#10#10#10
StatementType = stSQL
ColumnMappings = <
item
DatasetField = 'ID_AGENTE'
TableField = 'ID_AGENTE'
end
item
DatasetField = 'NOMBRE'
TableField = 'NOMBRE'
end
item
DatasetField = 'UNIDADES_VENDIDAS'
TableField = 'UNIDADES_VENDIDAS'
end
item
DatasetField = 'IMPORTE_TOTAL_UNIDADES'
TableField = 'IMPORTE_TOTAL_UNIDADES'
end
item
DatasetField = 'ID_EMPRESA'
TableField = 'ID_EMPRESA'
end>
end>
Name = 'InformeVentasComercialesResumen'
Fields = <
item
Name = 'ID_EMPRESA'
DataType = datInteger
end
item
Name = 'ID_AGENTE'
DataType = datInteger
end
item
Name = 'NOMBRE'
DataType = datString
Size = 255
end
item
Name = 'UNIDADES_VENDIDAS'
DataType = datCurrency
end
item
Name = 'IMPORTE_TOTAL_UNIDADES'
DataType = datCurrency
end>
end
item
Params = <>
Statements = <
item
ConnectionType = 'Interbase'
Default = True
SQL =
'select FC.ID_EMPRESA, FC.ID_AGENTE, AGENTES.NOMBRE, FCD.ID_ARTI' +
'CULO, A.REFERENCIA,'#10'(COALESCE(FCD.PROPIEDAD,'#39#39') || FCD.CONCEPTO)' +
' CONCEPTO, COALESCE(A.FAMILIA,'#39#39') || '#39' '#39' || COALESCE(A.referenci' +
'a_prov,'#39#39') || '#39' '#39' || COALESCE(A.DESCRIPCION,'#39#39') ARTICULO,'#10'avg(co' +
'alesce(FCD.importe_unidad,0)) importe_medio_unidad, sum(coalesce' +
'(FCD.cantidad,0)) unidades_vendidas, avg(coalesce(FCD.importe_un' +
'idad,0))*sum(coalesce(FCD.cantidad,0)) importe_medio_total, sum(' +
'coalesce(FCD.importe_total,0)) importe_total_unidades'#10'from contr' +
'atos_cliente_detalles FCD'#10'inner join contratos_cliente FC on (FC' +
'.ID = FCD.ID_CONTRATO)'#10'left join contactos AGENTES on (AGENTES.I' +
'D = FC.ID_AGENTE)'#10'inner join articulos A on (A.ID = FCD.ID_ARTIC' +
'ULO)'#10'where {where}'#10'and FCD.id_articulo > 1'#10'and FC.id_agente > 0'#10 +
'and A.COMISIONABLE = 1'#10'GROUP BY 1,2,3,4,5,6,7'#10'order by 9 DESC'#10'ro' +
'ws 1 to 10'#10
StatementType = stSQL
ColumnMappings = <
item
DatasetField = 'ID_AGENTE'
TableField = 'ID_AGENTE'
end
item
DatasetField = 'NOMBRE'
TableField = 'NOMBRE'
end
item
DatasetField = 'UNIDADES_VENDIDAS'
TableField = 'UNIDADES_VENDIDAS'
end
item
DatasetField = 'IMPORTE_TOTAL_UNIDADES'
TableField = 'IMPORTE_TOTAL_UNIDADES'
end
item
DatasetField = 'ID_EMPRESA'
TableField = 'ID_EMPRESA'
end
item
DatasetField = 'ID_ARTICULO'
TableField = 'ID_ARTICULO'
end
item
DatasetField = 'REFERENCIA'
TableField = 'REFERENCIA'
end
item
DatasetField = 'CONCEPTO'
TableField = 'CONCEPTO'
end
item
DatasetField = 'ARTICULO'
TableField = 'ARTICULO'
end
item
DatasetField = 'IMPORTE_MEDIO_UNIDAD'
TableField = 'IMPORTE_MEDIO_UNIDAD'
end
item
DatasetField = 'IMPORTE_MEDIO_TOTAL'
TableField = 'IMPORTE_MEDIO_TOTAL'
end>
end>
Name = 'InformeVentasComercialResumen'
Fields = <
item
Name = 'ID_EMPRESA'
DataType = datInteger
end
item
Name = 'ID_AGENTE'
DataType = datInteger
end
item
Name = 'NOMBRE'
DataType = datString
Size = 255
end
item
Name = 'ID_ARTICULO'
DataType = datInteger
end
item
Name = 'REFERENCIA'
DataType = datString
Size = 255
end
item
Name = 'CONCEPTO'
DataType = datString
Size = 2255
end
item
Name = 'ARTICULO'
DataType = datString
Size = 767
end
item
Name = 'IMPORTE_MEDIO_UNIDAD'
DataType = datCurrency
end
item
Name = 'UNIDADES_VENDIDAS'
DataType = datCurrency
end
item
Name = 'IMPORTE_MEDIO_TOTAL'
DataType = datCurrency
end
item
Name = 'IMPORTE_TOTAL_UNIDADES'
DataType = datCurrency
end>
end> end>
JoinDataTables = <> JoinDataTables = <>
UnionDataTables = <> UnionDataTables = <>
@ -1160,8 +1573,8 @@ object RptContratosCliente: TRptContratosCliente
PreviewOptions.Zoom = 1.000000000000000000 PreviewOptions.Zoom = 1.000000000000000000
PrintOptions.Printer = 'Por defecto' PrintOptions.Printer = 'Por defecto'
PrintOptions.PrintOnSheet = 0 PrintOptions.PrintOnSheet = 0
ReportOptions.CreateDate = 39065.872423495400000000 ReportOptions.CreateDate = 37800.807714351900000000
ReportOptions.LastChange = 44182.457662893520000000 ReportOptions.LastChange = 45831.740295370370000000
ScriptLanguage = 'PascalScript' ScriptLanguage = 'PascalScript'
ShowProgress = False ShowProgress = False
StoreInDFM = False StoreInDFM = False
@ -1409,43 +1822,43 @@ object RptContratosCliente: TRptContratosCliente
'lc_ctype=ISO8859_1') 'lc_ctype=ISO8859_1')
LoginPrompt = False LoginPrompt = False
DefaultTransaction = IBTransaction1 DefaultTransaction = IBTransaction1
Left = 48 Left = 32
Top = 296 Top = 232
end end
object IBTransaction1: TIBTransaction object IBTransaction1: TIBTransaction
Left = 48 Left = 32
Top = 352 Top = 288
end end
object DataSource1: TDataSource object DataSource1: TDataSource
DataSet = cabecera DataSet = cabecera
Left = 216 Left = 200
Top = 296 Top = 232
end end
object DataSource2: TDataSource object DataSource2: TDataSource
DataSet = capitulos DataSet = capitulos
Left = 216 Left = 200
Top = 352 Top = 288
end end
object capitulos: TIBQuery object capitulos: TIBQuery
Database = IBDatabase1 Database = IBDatabase1
Transaction = IBTransaction1 Transaction = IBTransaction1
SQL.Strings = ( SQL.Strings = (
'SELECT * FROM PRO_PRES_CAPITULOS(18)') 'SELECT * FROM PRO_PRES_CAPITULOS(18)')
Left = 136 Left = 120
Top = 352 Top = 288
end end
object DataSource3: TDataSource object DataSource3: TDataSource
DataSet = detalles DataSet = detalles
Left = 216 Left = 200
Top = 416 Top = 352
end end
object detalles: TIBQuery object detalles: TIBQuery
Database = IBDatabase1 Database = IBDatabase1
Transaction = IBTransaction1 Transaction = IBTransaction1
SQL.Strings = ( SQL.Strings = (
'SELECT * FROM PRO_PRES_CAPITULOS_CONCEPTOS(18)') 'SELECT * FROM PRO_PRES_CAPITULOS_CONCEPTOS(18)')
Left = 136 Left = 120
Top = 416 Top = 352
end end
object frxDBCapitulos: TfrxDBDataset object frxDBCapitulos: TfrxDBDataset
UserName = 'frxDBCapitulos' UserName = 'frxDBCapitulos'
@ -1488,8 +1901,8 @@ object RptContratosCliente: TRptContratosCliente
' V_CONTRATOS_CLIENTE INNER JOIN V_CLIENTES ON' ' V_CONTRATOS_CLIENTE INNER JOIN V_CLIENTES ON'
' (V_CONTRATOS_CLIENTE.ID_CLIENTE = V_CLIENTES.ID)' ' (V_CONTRATOS_CLIENTE.ID_CLIENTE = V_CLIENTES.ID)'
' WHERE V_CONTRATOS_CLIENTE.ID = 18') ' WHERE V_CONTRATOS_CLIENTE.ID = 18')
Left = 136 Left = 120
Top = 296 Top = 232
object cabeceraID: TIntegerField object cabeceraID: TIntegerField
FieldName = 'ID' FieldName = 'ID'
Origin = '"V_CONTRATOS_CLIENTE"."ID"' Origin = '"V_CONTRATOS_CLIENTE"."ID"'
@ -1675,6 +2088,7 @@ object RptContratosCliente: TRptContratosCliente
UseFileCache = True UseFileCache = True
ShowProgress = False ShowProgress = False
OverwritePrompt = False OverwritePrompt = False
EmbeddedFonts = True
PrintOptimized = True PrintOptimized = True
Outline = False Outline = False
Background = False Background = False
@ -1689,8 +2103,8 @@ object RptContratosCliente: TRptContratosCliente
FitWindow = False FitWindow = False
CenterWindow = False CenterWindow = False
PrintScaling = False PrintScaling = False
Left = 528 Left = 184
Top = 440 Top = 480
end end
object DADSInformeListadoContratos: TDADataSource object DADSInformeListadoContratos: TDADataSource
DataSet = tbl_InformeListadoContratos.Dataset DataSet = tbl_InformeListadoContratos.Dataset
@ -1867,6 +2281,11 @@ object RptContratosCliente: TRptContratosCliente
DataType = datString DataType = datString
Size = 2000 Size = 2000
end end
item
Name = 'CONCEPTO_FR'
DataType = datString
Size = 2000
end
item item
Name = 'CANTIDAD' Name = 'CANTIDAD'
DataType = datCurrency DataType = datCurrency
@ -2073,4 +2492,215 @@ object RptContratosCliente: TRptContratosCliente
Left = 528 Left = 528
Top = 128 Top = 128
end end
object frxDBInformeVentasArticulos: TfrxDBDataset
UserName = 'frxDBInformeVentasArticulos'
CloseDataSource = True
DataSource = DADSInformeVentasArticulos
BCDToCurrency = False
Left = 304
Top = 408
end
object DADSInformeVentasArticulos: TDADataSource
DataSet = tbl_informeVentasArticulos.Dataset
DataTable = tbl_informeVentasArticulos
Left = 304
Top = 464
end
object tbl_informeVentasArticulos: TDAMemDataTable
RemoteUpdatesOptions = []
Fields = <
item
Name = 'ID_ARTICULO'
DataType = datInteger
end
item
Name = 'REFERENCIA'
DataType = datString
Size = 255
end
item
Name = 'CONCEPTO'
DataType = datString
Size = 2255
end
item
Name = 'ARTICULO'
DataType = datString
Size = 767
end
item
Name = 'IMPORTE_MEDIO_UNIDAD'
DataType = datCurrency
end
item
Name = 'CANTIDAD'
DataType = datCurrency
end
item
Name = 'IMPORTE_MEDIO_TOTAL'
DataType = datCurrency
end
item
Name = 'IMPORTE_REAL_TOTAL'
DataType = datCurrency
end>
Params = <
item
Name = 'ID_EMPRESA'
Value = ''
end
item
Name = 'FECHAINI'
Value = ''
end
item
Name = 'FECHAFIN'
Value = ''
end>
MasterMappingMode = mmDataRequest
LogChanges = False
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteFetchEnabled = False
LocalSchema = schReport
LocalDataStreamer = DABin2DataStreamer1
LogicalName = 'InformeVentasArticulos'
IndexDefs = <>
Left = 304
Top = 520
end
object frxDBInformeVentasArticulosComercial: TfrxDBDataset
UserName = 'frxDBInformeVentasArticulosComercial'
CloseDataSource = True
DataSource = DADSInformeVentasArticulosComercial
BCDToCurrency = False
Left = 648
Top = 392
end
object DADSInformeVentasArticulosComercial: TDADataSource
DataSet = tbl_informeVentasArticulosComercial.Dataset
DataTable = tbl_informeVentasArticulosComercial
Left = 648
Top = 448
end
object tbl_informeVentasArticulosComercial: TDAMemDataTable
RemoteUpdatesOptions = []
Fields = <
item
Name = 'ID_AGENTE'
DataType = datInteger
end
item
Name = 'ID_ARTICULO'
DataType = datInteger
end
item
Name = 'REFERENCIA'
DataType = datString
Size = 255
end
item
Name = 'CONCEPTO'
DataType = datString
Size = 2255
end
item
Name = 'ARTICULO'
DataType = datString
Size = 767
end
item
Name = 'IMPORTE_MEDIO_UNIDAD'
DataType = datCurrency
end
item
Name = 'CANTIDAD'
DataType = datCurrency
end
item
Name = 'IMPORTE_MEDIO_TOTAL'
DataType = datCurrency
end
item
Name = 'IMPORTE_REAL_TOTAL'
DataType = datCurrency
end>
Params = <
item
Name = 'ID_EMPRESA'
Value = ''
ParamType = daptInput
end
item
Name = 'FECHAINI'
Value = ''
ParamType = daptInput
end
item
Name = 'FECHAFIN'
Value = ''
ParamType = daptInput
end>
MasterMappingMode = mmDataRequest
LogChanges = False
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteFetchEnabled = False
LocalSchema = schReport
LocalDataStreamer = DABin2DataStreamer1
LogicalName = 'InformeVentasArticulosComercial'
IndexDefs = <>
Left = 648
Top = 504
end
object frxDBInformeVentasComercialesResumen: TfrxDBDataset
UserName = 'frxDBInformeVentasComercialesResumen'
CloseDataSource = True
DataSource = DADSInformeVentasComercialesResumen
BCDToCurrency = False
Left = 448
Top = 408
end
object DADSInformeVentasComercialesResumen: TDADataSource
DataSet = tbl_InformeVentasComercialesResumen.Dataset
DataTable = tbl_InformeVentasComercialesResumen
Left = 448
Top = 464
end
object tbl_InformeVentasComercialesResumen: TDAMemDataTable
RemoteUpdatesOptions = []
Fields = <>
Params = <>
MasterMappingMode = mmDataRequest
LogChanges = False
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteFetchEnabled = False
IndexDefs = <>
Left = 448
Top = 520
end
object frxDBInformeVentasComercialResumen: TfrxDBDataset
UserName = 'frxDBInformeVentasComercialResumen'
CloseDataSource = True
DataSource = DADSInformeVentasComercialResumen
BCDToCurrency = False
Left = 848
Top = 400
end
object DADSInformeVentasComercialResumen: TDADataSource
DataSet = tbl_InformeVentasComercialResumen.Dataset
DataTable = tbl_InformeVentasComercialResumen
Left = 848
Top = 456
end
object tbl_InformeVentasComercialResumen: TDAMemDataTable
RemoteUpdatesOptions = []
Fields = <>
Params = <>
MasterMappingMode = mmDataRequest
LogChanges = False
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteFetchEnabled = False
IndexDefs = <>
Left = 848
Top = 512
end
end end

View File

@ -70,6 +70,18 @@ type
frxDBEtiquetas: TfrxDBDataset; frxDBEtiquetas: TfrxDBDataset;
DADataEtiquetas: TDADataSource; DADataEtiquetas: TDADataSource;
tbl_Etiquetas: TDAMemDataTable; tbl_Etiquetas: TDAMemDataTable;
frxDBInformeVentasArticulos: TfrxDBDataset;
DADSInformeVentasArticulos: TDADataSource;
tbl_informeVentasArticulos: TDAMemDataTable;
frxDBInformeVentasArticulosComercial: TfrxDBDataset;
DADSInformeVentasArticulosComercial: TDADataSource;
tbl_informeVentasArticulosComercial: TDAMemDataTable;
frxDBInformeVentasComercialesResumen: TfrxDBDataset;
DADSInformeVentasComercialesResumen: TDADataSource;
tbl_InformeVentasComercialesResumen: TDAMemDataTable;
frxDBInformeVentasComercialResumen: TfrxDBDataset;
DADSInformeVentasComercialResumen: TDADataSource;
tbl_InformeVentasComercialResumen: TDAMemDataTable;
schReport: TDASchema; schReport: TDASchema;
DataDictionary: TDADataDictionary; DataDictionary: TDADataDictionary;
procedure DataModuleCreate(Sender: TObject); procedure DataModuleCreate(Sender: TObject);
@ -82,7 +94,11 @@ type
FFechaInicio: Variant; FFechaInicio: Variant;
FFechaFin: Variant; FFechaFin: Variant;
FListaIDClientes: TIntegerArray; FListaIDClientes: TIntegerArray;
FListaIDComerciales: TIntegerArray;
FListaIDArticulos: TIntegerArray;
FListaNombresClientes: TStringList; FListaNombresClientes: TStringList;
FListaNombresComerciales: TStringList;
FListaNombresArticulos: TStringList;
FImporteMinimo: Currency; FImporteMinimo: Currency;
FDesglosado : Boolean; FDesglosado : Boolean;
FVerLogotipo : Boolean; FVerLogotipo : Boolean;
@ -92,12 +108,17 @@ type
procedure _GenerarContrato(const AID : Integer); procedure _GenerarContrato(const AID : Integer);
procedure PrepararTablaInformeVentasArticulo(ATabla: TDAMemDataTable);
procedure PrepararTablaResumenInformeVentasComerciales(ATabla: IDADataset);
procedure PrepararTablaInforme(ATabla: TDAMemDataTable); procedure PrepararTablaInforme(ATabla: TDAMemDataTable);
procedure PrepararTablaResumenInforme(ATabla: IDADataset); procedure PrepararTablaResumenInforme(ATabla: IDADataset);
function _GenerarInforme(const TipoInforme: String): Binary; function _GenerarInforme(const TipoInforme: String): Binary;
procedure IniciarParametrosInforme; procedure IniciarParametrosInforme(const TipoInforme: String);
procedure RecuperarNombresClientes; procedure RecuperarNombresClientes;
procedure RecuperarNombresConerciales;
procedure RecuperarNombresArticulos;
public public
function GenerarContrato(const ListaID : TIntegerArray; const NombreEmpresa: AnsiString; function GenerarContrato(const ListaID : TIntegerArray; const NombreEmpresa: AnsiString;
const VerLogotipo: Boolean = True; const VerPrecios: Boolean = True; const VerTotales: Boolean = True): Binary; const VerLogotipo: Boolean = True; const VerPrecios: Boolean = True; const VerTotales: Boolean = True): Binary;
@ -105,6 +126,7 @@ type
const VerLogotipo: Boolean = True; const VerPrecios: Boolean = True; const VerTotales: Boolean = True): Binary; const VerLogotipo: Boolean = True; const VerPrecios: Boolean = True; const VerTotales: Boolean = True): Binary;
function GenerarInformeListadoContratos(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary; function GenerarInformeListadoContratos(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarEtiquetas(const AID : Integer; const AAgencia: Variant; const ARefPedido: Variant; const ANumEtiquetas: Integer; const AEtiquetaIni: Integer): Binary; function GenerarEtiquetas(const AID : Integer; const AAgencia: Variant; const ARefPedido: Variant; const ANumEtiquetas: Integer; const AEtiquetaIni: Integer): Binary;
function GenerarInformeVentasArticulos(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDArticulos: TIntegerArray; const ListaIDComerciales: TIntegerArray): Binary;
end; end;
implementation implementation
@ -113,7 +135,7 @@ implementation
uses uses
uSistemaFunc, StrUtils, uDataModuleServer, schContratosClienteClient_Intf, uSistemaFunc, StrUtils, uDataModuleServer, schContratosClienteClient_Intf,
uROServer, DataAbstract4_Intf, uBizidiomasServer; uROServer, DataAbstract4_Intf, uBizidiomasServer, uStringsUtils;
const const
@ -121,9 +143,13 @@ const
rptInformeListadoContratosDesglosado = 'InformeListadoContratosDesglosado.fr3'; rptInformeListadoContratosDesglosado = 'InformeListadoContratosDesglosado.fr3';
rptInformeListadoContratos = 'InformeListadoContratos.fr3'; rptInformeListadoContratos = 'InformeListadoContratos.fr3';
rptInfEtiquetas = 'InfEtiquetasContratoCliente.fr3'; rptInfEtiquetas = 'InfEtiquetasContratoCliente.fr3';
rptInformeVentasArticulos = 'InformeVentasArticulos.fr3';
rptInformeVentasArticulosComercial = 'InformeVentasArticulosComercial.fr3';
{ Dataset names for schReport } { Dataset names for schReport }
ds_InformeListadoContratosResumen = 'InformeListadoContratosResumen'; ds_InformeListadoContratosResumen = 'InformeListadoContratosResumen';
ds_InformeVentasComercialesResumen = 'InformeVentasComercialesResumen';
ds_InformeVentasComercialResumen = 'InformeVentasComercialResumen';
procedure TRptContratosCliente.DataModuleCreate(Sender: TObject); procedure TRptContratosCliente.DataModuleCreate(Sender: TObject);
@ -142,6 +168,8 @@ begin
frxDBDetalles.CloseDataSource := False; frxDBDetalles.CloseDataSource := False;
FListaNombresClientes := TStringList.Create; FListaNombresClientes := TStringList.Create;
FListaNombresComerciales := TStringList.Create;
FListaNombresArticulos := TStringList.Create;
with tbl_Detalles do with tbl_Detalles do
begin begin
@ -210,7 +238,7 @@ begin
end; end;
end; end;
procedure TRptContratosCliente.IniciarParametrosInforme; procedure TRptContratosCliente.IniciarParametrosInforme(const TipoInforme: String);
var var
ATextos : TStringList; ATextos : TStringList;
ACadena : String; ACadena : String;
@ -238,12 +266,45 @@ begin
ACadena := FListaNombresClientes.Text; ACadena := FListaNombresClientes.Text;
end end
else begin else begin
ACadena := 'Todos los clientes'; if (TipoInforme <> rptInformeVentasArticulos)
and (TipoInforme <> rptInformeVentasArticulosComercial) then
ACadena := 'Todos los clientes';
if FDesglosado then if FDesglosado then
ACadena := ACadena + ' (desglosados)' ACadena := ACadena + ' (desglosados)'
end; end;
ATextos.Add(ACadena); if not EsCadenaVacia(ACadena) then
ATextos.Add(ACadena);
ACadena := '';
if Assigned(FListaIDComerciales) and (FListaIDComerciales.Count > 0) then
begin
RecuperarNombresConerciales;
ACadena := FListaNombresComerciales.Text;
end
else begin
ACadena := 'Todos los comerciales';
if FDesglosado then
ACadena := ACadena + ' (desglosados)'
end;
if not EsCadenaVacia(ACadena) then
ATextos.Add(ACadena);
ACadena := '';
if Assigned(FListaIDArticulos) and (FListaIDArticulos.Count > 0) then
begin
RecuperarNombresArticulos;
ACadena := FListaNombresArticulos.Text;
end
else begin
ACadena := 'Todos los articulos';
if FDesglosado then
ACadena := ACadena + ' (desglosados)'
end;
if not EsCadenaVacia(ACadena) then
ATextos.Add(ACadena);
ACadena := ''; ACadena := '';
frxReport.Variables.Variables['TextoParametros'] := ATextos.Text; frxReport.Variables.Variables['TextoParametros'] := ATextos.Text;
@ -285,7 +346,7 @@ begin
end; end;
end; end;
// Filtrar el informe por proveedor // Filtrar el informe por cliente
if Assigned(FListaIDClientes) then if Assigned(FListaIDClientes) then
begin begin
with ATabla.DynamicWhere do with ATabla.DynamicWhere do
@ -303,6 +364,24 @@ begin
end; end;
end; end;
// Filtrar el informe por cliente
if Assigned(FListaIDComerciales) then
begin
with ATabla.DynamicWhere do
begin
for i := 0 to FListaIDComerciales.Count - 1 do
begin
// (ID_CLIENTE = ID)
Condicion := NewBinaryExpression(NewField('', fld_ContratosClienteID_AGENTE), NewConstant(FListaIDComerciales.Items[i], datInteger), dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
end;
end;
// Filtrar el informe por importe minimo // Filtrar el informe por importe minimo
if (FImporteMinimo > 0) then if (FImporteMinimo > 0) then
begin begin
@ -318,6 +397,63 @@ begin
end; end;
end; end;
procedure TRptContratosCliente.PrepararTablaInformeVentasArticulo(ATabla: TDAMemDataTable);
var
Condicion: TDAWhereExpression;
i: Integer;
begin
// Filtrar el informe por empresa
if not VarIsNull(FIdEmpresa) then
begin
ATabla.ParamByName('ID_EMPRESA').AsVariant := FIdEmpresa;
end;
// Filtrar el informe por fechas
if not VarIsNull(FFechaInicio)
and not VarIsNull(FFechaFin) then
begin
ATabla.ParamByName('FECHAINI').AsVariant := FFechaInicio;
ATabla.ParamByName('FECHAFIN').AsVariant := FFechaFin;
end;
// Filtrar el informe por Comerciales
if Assigned(FListaIDComerciales) then
begin
with ATabla.DynamicWhere do
begin
for i := 0 to FListaIDComerciales.Count - 1 do
begin
// (ID_AGENTE = ID)
Condicion := NewBinaryExpression(NewField('', fld_ContratosClienteID_AGENTE), NewConstant(FListaIDComerciales.Items[i], datInteger), dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
end;
end;
// Filtrar el informe por articulo
if Assigned(FListaIDArticulos) then
begin
with ATabla.DynamicWhere do
begin
for i := 0 to FListaIDArticulos.Count - 1 do
begin
// (ID_ARTICULO = ID)
Condicion := NewBinaryExpression(NewField('', fld_ContratosCliente_DetallesID_ARTICULO), NewConstant(FListaIDArticulos.Items[i], datInteger), dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
end;
end;
end;
procedure TRptContratosCliente.PrepararTablaResumenInforme(ATabla: IDADataset); procedure TRptContratosCliente.PrepararTablaResumenInforme(ATabla: IDADataset);
var var
i: Integer; i: Integer;
@ -347,6 +483,18 @@ begin
end; end;
end; end;
// Filtrar el informe por articulo
if Assigned(FListaIDArticulos) then
begin
{ for i := 0 to FListaIDArticulos.Count - 1 do
begin
if Length(AWhereStr) > 0 then
AWhereStr := AWhereStr + 'AND';
AWhereStr := AWhereStr + ' (' + fld_ContratosClienteID_CLIENTE + ' = ' + IntToStr(FListaIDClientes.Items[i]) + ') ';
end;
}
end;
// Filtrar el informe por importe minimo // Filtrar el informe por importe minimo
if (FImporteMinimo > 0) then if (FImporteMinimo > 0) then
begin begin
@ -358,6 +506,169 @@ begin
ATabla.Where.AddText(AWhereStr); ATabla.Where.AddText(AWhereStr);
end; end;
procedure TRptContratosCliente.PrepararTablaResumenInformeVentasComerciales(ATabla: IDADataset);
var
i: Integer;
AWhereStr : String;
Condicion: TDAWhereExpression;
begin
// Filtrar el informe por empresa
with ATabla.DynamicWhere do
begin
// (ID_EMPRESA >= ID)
Condicion := NewBinaryExpression(NewField('', ('FC.'+ fld_ContratosClienteID_EMPRESA)), NewConstant(FIdEmpresa, datInteger), dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
// Filtrar el informe por fechas
if not VarIsNull(FFechaInicio)
and not VarIsNull(FFechaFin) then
begin
with ATabla.DynamicWhere do
begin
// (FECHA_INICIO between FECHA_FIN)
Condicion := NewBinaryExpression(NewField('', fld_ContratosClienteFECHA_Contrato), NewConstant(FFechaInicio, datDateTime), dboGreaterOrEqual);
Condicion := NewBinaryExpression(NewBinaryExpression(NewField('', fld_ContratosClienteFECHA_Contrato), NewConstant(FFechaFin, datDateTime), dboLessOrEqual), Condicion, dboAnd);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
end;
// Filtrar el informe por Comerciales
if Assigned(FListaIDComerciales) then
begin
with ATabla.DynamicWhere do
begin
for i := 0 to FListaIDComerciales.Count - 1 do
begin
// (ID_AGENTE = ID)
Condicion := NewBinaryExpression(NewField('', fld_ContratosClienteID_AGENTE), NewConstant(FListaIDComerciales.Items[i], datInteger), dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
end;
end;
// Filtrar el informe por articulo
if Assigned(FListaIDArticulos) then
begin
with ATabla.DynamicWhere do
begin
for i := 0 to FListaIDArticulos.Count - 1 do
begin
// (ID_ARTICULO = ID)
Condicion := NewBinaryExpression(NewField('', fld_ContratosCliente_DetallesID_ARTICULO), NewConstant(FListaIDArticulos.Items[i], datInteger), dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
end;
end;
end;
procedure TRptContratosCliente.RecuperarNombresArticulos;
var
AArticulosService : IsrvArticulos;
Intf : IInterface;
AClientID : TGUID;
ATableNameArray: StringArray;
ATableRequestInfoArray: TableRequestInfoArray;
ATableRequestInfo: TableRequestInfoV5;
AStream: TMemoryStream;
ADataTable: TDAMemDataTable;
i: Integer;
AWhereBuilder : TDAWhereBuilder;
ACondicion : TDAWhereExpression;
ACadena: String;
begin
CreateGUID(AClientID);
GetClassFactory('srvArticulos').CreateInstance(AClientID, Intf);
if Assigned(Intf) then
begin
AArticulosService := Intf as IsrvArticulos;
ATableNameArray := StringArray.Create;
ATableRequestInfoArray := TableRequestInfoArray.Create;
AWhereBuilder := TDAWhereBuilder.Create;
try
ATableNameArray.Add('Articulos');
ATableRequestInfo := TableRequestInfoV5.Create;
with ATableRequestInfo do
begin
IncludeSchema := True;
MaxRecords := -1;
UserFilter := '';
AWhereBuilder.Clear;
with AWhereBuilder do
for i := 0 to FListaIDArticulos.Count - 1 do
begin
ACondicion := NewBinaryExpression(
NewBinaryExpression(NewField('', 'ID'), NewConstant(FListaIDArticulos[i], datInteger), dboEqual),
NewBinaryExpression(NewField('', 'ID_EMPRESA'), NewConstant(FIdEmpresa, datInteger), dboEqual),
dboAnd);
if not AWhereBuilder.IsEmpty then
Expression := NewBinaryExpression(Expression, ACondicion, dboOr)
else
Expression := ACondicion;
end;
WhereClause := AWhereBuilder.ExpressionToXmlNode(AWhereBuilder.Expression);
end;
try
ATableRequestInfoArray.Add(ATableRequestInfo);
AStream := AArticulosService.GetData(ATableNameArray, ATableRequestInfoArray);
if Assigned(AStream) then
begin
ADataTable := TDAMemDataTable.Create(nil);
try
ADataTable.Name := 'Articulos';
ADataTable.LocalDataStreamer := DABin2DataStreamer1;
ADataTable.RemoteFetchEnabled := False;
DABin2DataStreamer1.ReadDataset(AStream, ADataTable, True);
ADataTable.Open;
FListaNombresArticulos.Clear;
for i := 0 to ADataTable.RecordCount - 1 do
begin
ACadena := ADataTable.FieldByName('FAMILIA').AsString + ADataTable.FieldByName('REFERENCIA_PROV').AsString + ADataTable.FieldByName('DESCRIPCION').AsString;
FListaNombresArticulos.Add(ACadena);
ADataTable.Next;
end;
finally
FreeANDNil(ADataTable);
end;
end;
except
on e: Exception do
dmServer.EscribirLog(e.Message);
end;
finally
FreeANDNIL(ATableRequestInfoArray);
FreeANDNIL(ATableNameArray);
FreeANDNIL(AWhereBuilder);
end;
end;
end;
procedure TRptContratosCliente.RecuperarNombresClientes; procedure TRptContratosCliente.RecuperarNombresClientes;
var var
AContactosService : IsrvContactos; AContactosService : IsrvContactos;
@ -448,6 +759,96 @@ begin
end; end;
end; end;
procedure TRptContratosCliente.RecuperarNombresConerciales;
var
AContactosService : IsrvContactos;
Intf : IInterface;
AClientID : TGUID;
ATableNameArray: StringArray;
ATableRequestInfoArray: TableRequestInfoArray;
ATableRequestInfo: TableRequestInfoV5;
AStream: TMemoryStream;
ADataTable: TDAMemDataTable;
i: Integer;
AWhereBuilder : TDAWhereBuilder;
ACondicion : TDAWhereExpression;
begin
CreateGUID(AClientID);
GetClassFactory('srvContactos').CreateInstance(AClientID, Intf);
if Assigned(Intf) then
begin
AContactosService := Intf as IsrvContactos;
ATableNameArray := StringArray.Create;
ATableRequestInfoArray := TableRequestInfoArray.Create;
AWhereBuilder := TDAWhereBuilder.Create;
try
ATableNameArray.Add('Comerciales');
ATableRequestInfo := TableRequestInfoV5.Create;
with ATableRequestInfo do
begin
IncludeSchema := True;
MaxRecords := -1;
UserFilter := '';
AWhereBuilder.Clear;
with AWhereBuilder do
for i := 0 to FListaIDComerciales.Count - 1 do
begin
ACondicion := NewBinaryExpression(
NewBinaryExpression(NewField('', 'ID'), NewConstant(FListaIDComerciales[i], datInteger), dboEqual),
NewBinaryExpression(NewField('', 'ID_EMPRESA'), NewConstant(FIdEmpresa, datInteger), dboEqual),
dboAnd);
if not AWhereBuilder.IsEmpty then
Expression := NewBinaryExpression(Expression, ACondicion, dboOr)
else
Expression := ACondicion;
end;
WhereClause := AWhereBuilder.ExpressionToXmlNode(AWhereBuilder.Expression);
end;
try
ATableRequestInfoArray.Add(ATableRequestInfo);
AStream := AContactosService.GetData(ATableNameArray, ATableRequestInfoArray);
if Assigned(AStream) then
begin
ADataTable := TDAMemDataTable.Create(nil);
try
ADataTable.Name := 'Comerciales';
ADataTable.LocalDataStreamer := DABin2DataStreamer1;
ADataTable.RemoteFetchEnabled := False;
DABin2DataStreamer1.ReadDataset(AStream, ADataTable, True);
ADataTable.Open;
FListaNombresComerciales.Clear;
for i := 0 to ADataTable.RecordCount - 1 do
begin
FListaNombresComerciales.Add(ADataTable.FieldByName('NOMBRE').AsString);
ADataTable.Next;
end;
finally
FreeANDNil(ADataTable);
end;
end;
except
on e: Exception do
dmServer.EscribirLog(e.Message);
end;
finally
FreeANDNIL(ATableRequestInfoArray);
FreeANDNIL(ATableNameArray);
FreeANDNIL(AWhereBuilder);
end;
end;
end;
procedure TRptContratosCliente.DataModuleDestroy(Sender: TObject); procedure TRptContratosCliente.DataModuleDestroy(Sender: TObject);
begin begin
tbl_Cabecera.Active := False; tbl_Cabecera.Active := False;
@ -456,6 +857,8 @@ begin
tbl_Condiciones.Active := False; tbl_Condiciones.Active := False;
FreeANDNIL(FListaNombresClientes); FreeANDNIL(FListaNombresClientes);
FreeANDNIL(FListaNombresComerciales);
FreeANDNIL(FListaNombresArticulos);
end; end;
function TRptContratosCliente.frxReportUserFunction(const MethodName: string; function TRptContratosCliente.frxReportUserFunction(const MethodName: string;
@ -531,6 +934,111 @@ begin
end; end;
end; end;
function TRptContratosCliente.GenerarInformeVentasArticulos(const IdEmpresa: Integer; const FechaInicio, FechaFin: Variant; const ListaIDArticulos: TIntegerArray; const ListaIDComerciales: TIntegerArray): Binary;
var
ATipoInforme: String;
AStream: TMemoryStream;
dsMaster: IDADataset;
begin
FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
AStream := TMemoryStream.Create;
try
//Inicializamos parametros
FIdEmpresa := IdEmpresa;
FFechaInicio := FechaInicio;
FFechaFin := FechaFin;
if Assigned(FListaIDArticulos) then
FListaIDArticulos.Free;
FListaIDArticulos := ListaIDArticulos;
if Assigned(FListaIDComerciales) then
FListaIDComerciales.Free;
FListaIDComerciales := ListaIDComerciales;
if Assigned(FListaIDComerciales) and (FListaIDComerciales.Count > 0) then
begin
if tbl_InformeVentasArticulosComercial.Active then
tbl_InformeVentasArticulosComercial.Active := False;
PrepararTablaInformeVentasArticulo(tbl_InformeVentasArticulosComercial);
ATipoInforme := rptInformeVentasArticulosComercial;
tbl_InformeVentasArticulosComercial.Active := True;
//Se prepara la tabla del listado resumen del informe
if tbl_InformeVentasComercialResumen.Active then
tbl_InformeVentasComercialResumen.Active := False;
dsMaster := schReport.NewDataset(FConnection, ds_InformeVentasComercialResumen, [], [], False);
PrepararTablaResumenInformeVentasComerciales(dsMaster);
//Esto se hace para rellenar la tabla del datamodule que usa el informe.
dsMaster.Open;
AStream.Clear;
DABin2DataStreamer1.WriteDataset(AStream, dsMaster, [woRows, woSchema], -1);
DABin2DataStreamer1.ReadDataset(AStream, tbl_InformeVentasComercialResumen, TRUE, '', TRUE, TRUE);
//Finalmente se abren las tablas del informe
tbl_InformeVentasComercialResumen.Active := True;
end
else
begin
if tbl_InformeVentasArticulos.Active then
tbl_InformeVentasArticulos.Active := False;
PrepararTablaInformeVentasArticulo(tbl_InformeVentasArticulos);
ATipoInforme := rptInformeVentasArticulos;
tbl_InformeVentasArticulos.Active := True;
//Se prepara la tabla del listado resumen del informe
if tbl_InformeVentasComercialesResumen.Active then
tbl_InformeVentasComercialesResumen.Active := False;
dsMaster := schReport.NewDataset(FConnection, ds_InformeVentasComercialesResumen, [], [], False);
PrepararTablaResumenInformeVentasComerciales(dsMaster);
//Esto se hace para rellenar la tabla del datamodule que usa el informe.
dsMaster.Open;
AStream.Clear;
DABin2DataStreamer1.WriteDataset(AStream, dsMaster, [woRows, woSchema], -1);
DABin2DataStreamer1.ReadDataset(AStream, tbl_InformeVentasComercialesResumen, TRUE, '', TRUE, TRUE);
//Finalmente se abren las tablas del informe
tbl_InformeVentasComercialesResumen.Active := True;
end;
//Se prepara la tabla del listado resumen del informe
{ if tbl_InformeListadoContratosResumen.Active then
tbl_InformeListadoContratosResumen.Active := False;
dsMaster := schReport.NewDataset(FConnection, ds_InformeListadoContratosResumen, [], [], False);
PrepararTablaResumenInforme(dsMaster);
}
//Esto se hace para rellenar la tabla del datamodule que usa el informe.
{ dsMaster.Open;
AStream.Clear;
DABin2DataStreamer1.WriteDataset(AStream, dsMaster, [woRows, woSchema], -1);
DABin2DataStreamer1.ReadDataset(AStream, tbl_InformeListadoContratosResumen, TRUE, '', TRUE, TRUE);
}
//DESGLOSADO POR CLIENTE EN ESTE INFORME NO SE DESGLOSARÁ POR CLIENTE
{ FDesglosado := Desglosado;
if FDesglosado then
ATipoInforme := rptInformeListadoContratosDesglosado
else
ATipoInforme := rptInformeListadoContratos;
}
//Finalmente se abren las tablas del informe
// tbl_InformeListadoContratosResumen.Active := True;
Result := _GenerarInforme(ATipoInforme);
finally
AStream.Free;
dsMaster := Nil;
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
end;
end;
function TRptContratosCliente.GenerarContrato(const ListaID: TIntegerArray; const NombreEmpresa: AnsiString; function TRptContratosCliente.GenerarContrato(const ListaID: TIntegerArray; const NombreEmpresa: AnsiString;
const VerLogotipo: Boolean = True; const VerPrecios: Boolean = True; const VerTotales: Boolean = True): Binary; const VerLogotipo: Boolean = True; const VerPrecios: Boolean = True; const VerTotales: Boolean = True): Binary;
var var
@ -564,7 +1072,7 @@ begin
raise Exception.Create (('Error Servidor: _GenerarInforme, no encuentra informe ' + TipoInforme)); raise Exception.Create (('Error Servidor: _GenerarInforme, no encuentra informe ' + TipoInforme));
frxReport.LoadFromFile(AInforme, True); frxReport.LoadFromFile(AInforme, True);
IniciarParametrosInforme; IniciarParametrosInforme(TipoInforme);
frxReport.PrepareReport(False); frxReport.PrepareReport(False);
frxReport.PreviewPages.SaveToStream(Result); frxReport.PreviewPages.SaveToStream(Result);
@ -595,6 +1103,8 @@ begin
if (tbl_Cabecera.FieldByName('IDIOMA_ISO').AsString = IDIOMA_EN) then if (tbl_Cabecera.FieldByName('IDIOMA_ISO').AsString = IDIOMA_EN) then
AInforme := DarRutaFichero(DarRutaInformes, rptInforme, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString, tbl_Cabecera.FieldByName('ID_TIENDA').AsString, IDIOMA_EN) AInforme := DarRutaFichero(DarRutaInformes, rptInforme, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString, tbl_Cabecera.FieldByName('ID_TIENDA').AsString, IDIOMA_EN)
else if (tbl_Cabecera.FieldByName('IDIOMA_ISO').AsString = IDIOMA_FR) then
AInforme := DarRutaFichero(DarRutaInformes, rptInforme, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString, tbl_Cabecera.FieldByName('ID_TIENDA').AsString, IDIOMA_FR)
else else
AInforme := DarRutaFichero(DarRutaInformes, rptInforme, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString, tbl_Cabecera.FieldByName('ID_TIENDA').AsString); AInforme := DarRutaFichero(DarRutaInformes, rptInforme, tbl_Cabecera.FieldByName('ID_EMPRESA').AsString, tbl_Cabecera.FieldByName('ID_TIENDA').AsString);

View File

@ -273,6 +273,51 @@ object srvContratosCliente: TsrvContratosCliente
DataType = datCurrency DataType = datCurrency
end> end>
end end
item
Params = <
item
Name = 'FECHA_INI'
Value = ''
end
item
Name = 'FECHA_FIN'
Value = ''
end
item
Name = 'ID_EMPRESA'
Value = ''
end>
Statements = <
item
ConnectionType = 'Interbase'
Default = True
Name = 'IBX'
SQL =
'select *'#10'from PROC_REVISAR_CONT_TERMINADOS (:FECHA_INI, :FECHA_F' +
'IN, :ID_EMPRESA)'#10
StatementType = stSQL
ColumnMappings = <
item
DatasetField = 'REFERENCIAS_MODIFICADAS'
TableField = 'REFERENCIAS_MODIFICADAS'
end
item
DatasetField = 'NUM_CONT_MODIF'
TableField = 'NUM_CONT_MODIF'
end>
end>
Name = 'RevisarContratosTerminados'
Fields = <
item
Name = 'REFERENCIAS_MODIFICADAS'
DataType = datString
Size = 10000
end
item
Name = 'NUM_CONT_MODIF'
DataType = datInteger
end>
end
item item
Params = <> Params = <>
Statements = < Statements = <

View File

@ -79,7 +79,10 @@ requires
PreCli_ConCli_relation, PreCli_ConCli_relation,
Contactos_view, Contactos_view,
ConCli_RecCli_relation, ConCli_RecCli_relation,
JvCtrlsD11R; JvCtrlsD11R,
JSDialog100,
JvGlobusD11R,
bdertl;
contains contains
uContratosClienteViewRegister in 'uContratosClienteViewRegister.pas', uContratosClienteViewRegister in 'uContratosClienteViewRegister.pas',
@ -100,6 +103,8 @@ contains
uViewDireccionEntregaContratoCli in 'uViewDireccionEntregaContratoCli.pas' {frViewDireccionEntregaContratoCli: TFrame}, uViewDireccionEntregaContratoCli in 'uViewDireccionEntregaContratoCli.pas' {frViewDireccionEntregaContratoCli: TFrame},
uEditorDireccionEntregaContratoCliente in 'uEditorDireccionEntregaContratoCliente.pas' {fEditorDireccionEntregaContratoCliente: TFrame}, uEditorDireccionEntregaContratoCliente in 'uEditorDireccionEntregaContratoCliente.pas' {fEditorDireccionEntregaContratoCliente: TFrame},
uDialogOpcionesImpresionEtiquetasContratosCliente in 'uDialogOpcionesImpresionEtiquetasContratosCliente.pas' {fDialogOpcionesImpresionEtiquetasContratosCliente: TFrame}, uDialogOpcionesImpresionEtiquetasContratosCliente in 'uDialogOpcionesImpresionEtiquetasContratosCliente.pas' {fDialogOpcionesImpresionEtiquetasContratosCliente: TFrame},
uViewDatosYSeleccionContrato in 'uViewDatosYSeleccionContrato.pas' {frViewDatosYSeleccionContrato: TFrame}; uViewDatosYSeleccionContrato in 'uViewDatosYSeleccionContrato.pas' {frViewDatosYSeleccionContrato: TFrame},
uViewContratosClienteParaCompra in 'uViewContratosClienteParaCompra.pas' {frViewContratosClienteParaCompra: TFrame},
uEditorElegirContratosClienteParaCompra in 'uEditorElegirContratosClienteParaCompra.pas'{fEditorElegirPresupuestosClienteParaCompra: TfEditorElegirPedidosClienteParaCompra};
end. end.

View File

@ -49,54 +49,64 @@
<DelphiCompile Include="ContratosCliente_view.dpk"> <DelphiCompile Include="ContratosCliente_view.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="adortl.dcp" /> <DCCReference Include="$(SystemRoot)\system32\adortl.dcp" />
<DCCReference Include="Articulos_view.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Articulos_view.dcp" />
<DCCReference Include="Base.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Base.dcp" />
<DCCReference Include="ConCli_AlbCli_relation.dcp" /> <DCCReference Include="$(SystemRoot)\system32\bdertl.dcp" />
<DCCReference Include="ConCli_FacCli_relation.dcp" /> <DCCReference Include="$(SystemRoot)\system32\ConCli_AlbCli_relation.dcp" />
<DCCReference Include="ConCli_RecCli_relation.dcp" /> <DCCReference Include="$(SystemRoot)\system32\ConCli_FacCli_relation.dcp" />
<DCCReference Include="Contactos_view.dcp" /> <DCCReference Include="$(SystemRoot)\system32\ConCli_RecCli_relation.dcp" />
<DCCReference Include="ContratosCliente_controller.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Contactos_view.dcp" />
<DCCReference Include="ContratosCliente_model.dcp" /> <DCCReference Include="$(SystemRoot)\system32\ContratosCliente_controller.dcp" />
<DCCReference Include="cxDataD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\ContratosCliente_model.dcp" />
<DCCReference Include="cxEditorsD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxDataD11.dcp" />
<DCCReference Include="cxExportD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxEditorsD11.dcp" />
<DCCReference Include="cxExtEditorsD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxExportD11.dcp" />
<DCCReference Include="cxGridD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxExtEditorsD11.dcp" />
<DCCReference Include="cxLibraryD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxGridD11.dcp" />
<DCCReference Include="cxPageControlD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxLibraryD11.dcp" />
<DCCReference Include="DataAbstract_Core_D11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\cxPageControlD11.dcp" />
<DCCReference Include="dbrtl.dcp" /> <DCCReference Include="$(SystemRoot)\system32\DataAbstract_Core_D11.dcp" />
<DCCReference Include="dclcxLibraryD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dbrtl.dcp" />
<DCCReference Include="dcldxCoreD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dclcxLibraryD11.dcp" />
<DCCReference Include="designide.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dcldxCoreD11.dcp" />
<DCCReference Include="dsnap.dcp" /> <DCCReference Include="$(SystemRoot)\system32\designide.dcp" />
<DCCReference Include="dxComnD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dsnap.dcp" />
<DCCReference Include="dxCoreD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxComnD11.dcp" />
<DCCReference Include="dxGDIPlusD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxCoreD11.dcp" />
<DCCReference Include="dxLayoutControlD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxGDIPlusD11.dcp" />
<DCCReference Include="dxPSCoreD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxLayoutControlD11.dcp" />
<DCCReference Include="dxPScxCommonD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxPSCoreD11.dcp" />
<DCCReference Include="dxPScxGrid6LnkD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxPScxCommonD11.dcp" />
<DCCReference Include="dxPSLnksD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxPScxGrid6LnkD11.dcp" />
<DCCReference Include="dxThemeD11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxPSLnksD11.dcp" />
<DCCReference Include="GestorInformes_controller.dcp" /> <DCCReference Include="$(SystemRoot)\system32\dxThemeD11.dcp" />
<DCCReference Include="GUIBase.dcp" /> <DCCReference Include="$(SystemRoot)\system32\GestorInformes_controller.dcp" />
<DCCReference Include="GUISDK_D11R.dcp" /> <DCCReference Include="$(SystemRoot)\system32\GUIBase.dcp" />
<DCCReference Include="Jcl.dcp" /> <DCCReference Include="$(SystemRoot)\system32\GUISDK_D11R.dcp" />
<DCCReference Include="JclVcl.dcp" /> <DCCReference Include="$(SystemRoot)\system32\Jcl.dcp" />
<DCCReference Include="JvCoreD11R.dcp" /> <DCCReference Include="$(SystemRoot)\system32\JclVcl.dcp" />
<DCCReference Include="JvCtrlsD11R.dcp" /> <DCCReference Include="$(SystemRoot)\system32\JSDialog100.dcp" />
<DCCReference Include="JvPageCompsD11R.dcp" /> <DCCReference Include="$(SystemRoot)\system32\JvCoreD11R.dcp" />
<DCCReference Include="JvStdCtrlsD11R.dcp" /> <DCCReference Include="$(SystemRoot)\system32\JvCtrlsD11R.dcp" />
<DCCReference Include="JvSystemD11R.dcp" /> <DCCReference Include="$(SystemRoot)\system32\JvGlobusD11R.dcp" />
<DCCReference Include="PngComponentsD10.dcp" /> <DCCReference Include="$(SystemRoot)\system32\JvPageCompsD11R.dcp" />
<DCCReference Include="PNG_D10.dcp" /> <DCCReference Include="$(SystemRoot)\system32\JvStdCtrlsD11R.dcp" />
<DCCReference Include="PreCli_ConCli_relation.dcp" /> <DCCReference Include="$(SystemRoot)\system32\JvSystemD11R.dcp" />
<DCCReference Include="RemObjects_Core_D11.dcp" /> <DCCReference Include="$(SystemRoot)\system32\PngComponentsD10.dcp" />
<DCCReference Include="rtl.dcp" /> <DCCReference Include="$(SystemRoot)\system32\PNG_D10.dcp" />
<DCCReference Include="tb2k_d10.dcp" /> <DCCReference Include="$(SystemRoot)\system32\PreCli_ConCli_relation.dcp" />
<DCCReference Include="tbx_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\vclshlctrls.dcp" />
<DCCReference Include="$(SystemRoot)\system32\vclx.dcp" />
<DCCReference Include="$(SystemRoot)\system32\xmlrtl.dcp" />
<DCCReference Include="uContratosClienteViewRegister.pas" /> <DCCReference Include="uContratosClienteViewRegister.pas" />
<DCCReference Include="uDialogOpcionesImpresionContratosCliente.pas"> <DCCReference Include="uDialogOpcionesImpresionContratosCliente.pas">
<Form>fDialogOpcionesImpresionContratosCliente</Form> <Form>fDialogOpcionesImpresionContratosCliente</Form>
@ -134,6 +144,10 @@
<Form>fEditorElegirPresupuestosCliente</Form> <Form>fEditorElegirPresupuestosCliente</Form>
<DesignClass>TfEditorElegirPedidosCliente</DesignClass> <DesignClass>TfEditorElegirPedidosCliente</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="uEditorElegirContratosClienteParaCompra.pas">
<Form>fEditorElegirPresupuestosClienteParaCompra</Form>
<DesignClass>TfEditorElegirPedidosCliente</DesignClass>
</DCCReference>
<DCCReference Include="uViewContratoCliente.pas"> <DCCReference Include="uViewContratoCliente.pas">
<Form>frViewContratoCliente</Form> <Form>frViewContratoCliente</Form>
<DesignClass>TFrame</DesignClass> <DesignClass>TFrame</DesignClass>
@ -146,12 +160,16 @@
<Form>frViewContratosClienteBeneficios</Form> <Form>frViewContratosClienteBeneficios</Form>
<DesignClass>TFrame</DesignClass> <DesignClass>TFrame</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="uViewContratosClienteParaCompra.pas">
<Form>frViewContratosClienteParaCompra</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="uViewDatosYSeleccionClienteContrato.pas"> <DCCReference Include="uViewDatosYSeleccionClienteContrato.pas">
<Form>frViewDatosYSeleccionClienteContrato</Form> <Form>frViewDatosYSeleccionClienteContrato</Form>
<DesignClass>TFrame</DesignClass> <DesignClass>TFrame</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="uViewDatosYSeleccionContrato.pas"> <DCCReference Include="uViewDatosYSeleccionContrato.pas">
<Form>frViewDireccionEntregaContratoCli</Form> <Form>frViewDatosYSeleccionContrato</Form>
<DesignClass>TFrame</DesignClass> <DesignClass>TFrame</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="uViewDetallesContratoCliente.pas"> <DCCReference Include="uViewDetallesContratoCliente.pas">
@ -170,13 +188,6 @@
<Form>frViewElegirArticulosContratosCliente</Form> <Form>frViewElegirArticulosContratosCliente</Form>
<DesignClass>TFrame</DesignClass> <DesignClass>TFrame</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="vcl.dcp" />
<DCCReference Include="vclactnband.dcp" />
<DCCReference Include="vcldb.dcp" />
<DCCReference Include="vcljpg.dcp" />
<DCCReference Include="vclshlctrls.dcp" />
<DCCReference Include="vclx.dcp" />
<DCCReference Include="xmlrtl.dcp" />
</ItemGroup> </ItemGroup>
</Project> </Project>
<!-- EurekaLog First Line <!-- EurekaLog First Line

View File

@ -9,7 +9,7 @@ implementation
uses uses
uEditorRegistryUtils, uEditorContratosCliente, uEditorContratosClienteBeneficios, uEditorRegistryUtils, uEditorContratosCliente, uEditorContratosClienteBeneficios,
uEditorContratoCliente, uEditorElegirContratosCliente, uEditorContratoCliente, uEditorElegirContratosCliente, uEditorElegirContratosClienteParaCompra,
uEditorElegirArticulosContratoCliente, uEditorContratosClienteReport, uEditorDireccionEntregaContratoCliente; uEditorElegirArticulosContratoCliente, uEditorContratosClienteReport, uEditorDireccionEntregaContratoCliente;
procedure RegisterViews; procedure RegisterViews;
@ -18,6 +18,7 @@ begin
EditorRegistry.RegisterClass(TfEditorContratosCliente, 'EditorContratosCliente'); EditorRegistry.RegisterClass(TfEditorContratosCliente, 'EditorContratosCliente');
EditorRegistry.RegisterClass(TfEditorContratoCliente, 'EditorContratoCliente'); EditorRegistry.RegisterClass(TfEditorContratoCliente, 'EditorContratoCliente');
EditorRegistry.RegisterClass(TfEditorElegirContratosCliente, 'EditorElegirContratosCliente'); EditorRegistry.RegisterClass(TfEditorElegirContratosCliente, 'EditorElegirContratosCliente');
EditorRegistry.RegisterClass(TfEditorElegirContratosClienteParaCompra, 'EditorElegirContratosClienteParaCompra');
EditorRegistry.RegisterClass(TfEditorElegirArticulosContratoCliente, 'EditorElegirArticulosContratosCliente'); EditorRegistry.RegisterClass(TfEditorElegirArticulosContratoCliente, 'EditorElegirArticulosContratosCliente');
EditorRegistry.RegisterClass(TfEditorContratosClientePreview, 'EditorContratosClientePreview'); EditorRegistry.RegisterClass(TfEditorContratosClientePreview, 'EditorContratosClientePreview');
EditorRegistry.RegisterClass(TfEditorDireccionEntregaContratoCliente, 'EditorDireccionEntregaContratoCliente'); EditorRegistry.RegisterClass(TfEditorDireccionEntregaContratoCliente, 'EditorDireccionEntregaContratoCliente');
@ -29,6 +30,7 @@ begin
EditorRegistry.UnRegisterClass(TfEditorContratosCliente); EditorRegistry.UnRegisterClass(TfEditorContratosCliente);
EditorRegistry.UnRegisterClass(TfEditorContratoCliente); EditorRegistry.UnRegisterClass(TfEditorContratoCliente);
EditorRegistry.UnRegisterClass(TfEditorElegirContratosCliente); EditorRegistry.UnRegisterClass(TfEditorElegirContratosCliente);
EditorRegistry.UnRegisterClass(TfEditorElegirContratosClienteParaCompra);
EditorRegistry.UnRegisterClass(TfEditorElegirArticulosContratoCliente); EditorRegistry.UnRegisterClass(TfEditorElegirArticulosContratoCliente);
EditorRegistry.UnRegisterClass(TfEditorContratosClientePreview); EditorRegistry.UnRegisterClass(TfEditorContratosClientePreview);
EditorRegistry.UnRegisterClass(TfEditorDireccionEntregaContratoCliente); EditorRegistry.UnRegisterClass(TfEditorDireccionEntregaContratoCliente);

View File

@ -2,7 +2,7 @@ inherited fEditorContratosCliente: TfEditorContratosCliente
Caption = 'Lista de contratos de cliente' Caption = 'Lista de contratos de cliente'
ClientHeight = 499 ClientHeight = 499
ClientWidth = 908 ClientWidth = 908
ExplicitWidth = 916 ExplicitWidth = 924
ExplicitHeight = 537 ExplicitHeight = 537
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
@ -126,7 +126,7 @@ inherited fEditorContratosCliente: TfEditorContratosCliente
Width = 908 Width = 908
ExplicitWidth = 908 ExplicitWidth = 908
inherited tbxMain: TTBXToolbar inherited tbxMain: TTBXToolbar
ExplicitWidth = 870 ExplicitWidth = 908
object TBXSubmenuItem3: TTBXSubmenuItem [0] object TBXSubmenuItem3: TTBXSubmenuItem [0]
Caption = 'Nuevo' Caption = 'Nuevo'
DisplayMode = nbdmImageAndText DisplayMode = nbdmImageAndText
@ -174,9 +174,13 @@ inherited fEditorContratosCliente: TfEditorContratosCliente
Action = actGenerarFactura Action = actGenerarFactura
DisplayMode = nbdmImageAndText DisplayMode = nbdmImageAndText
end end
object TBXItem54: TTBXItem [22]
Action = actRevisarContratosTerminados
DisplayMode = nbdmImageAndText
end
end end
inherited tbxFiltro: TTBXToolbar inherited tbxFiltro: TTBXToolbar
ExplicitWidth = 504 ExplicitWidth = 487
inherited lblAno: TTBXLabelItem inherited lblAno: TTBXLabelItem
Visible = True Visible = True
end end
@ -213,11 +217,11 @@ inherited fEditorContratosCliente: TfEditorContratosCliente
end end
end end
inherited TBXTMain2: TTBXToolbar inherited TBXTMain2: TTBXToolbar
Left = 504 Left = 487
DockPos = 343 DockPos = 343
Visible = True Visible = True
ExplicitLeft = 504 ExplicitLeft = 487
ExplicitWidth = 404 ExplicitWidth = 421
object TBXSeparatorItem18: TTBXSeparatorItem object TBXSeparatorItem18: TTBXSeparatorItem
end end
object TBXItem43: TTBXItem object TBXItem43: TTBXItem
@ -354,6 +358,12 @@ inherited fEditorContratosCliente: TfEditorContratosCliente
OnExecute = actGenerarReciboExecute OnExecute = actGenerarReciboExecute
OnUpdate = actGenerarReciboUpdate OnUpdate = actGenerarReciboUpdate
end end
object actRevisarContratosTerminados: TAction
Caption = 'Revisar terminados'
ImageIndex = 26
OnExecute = actRevisarContratosTerminadosExecute
OnUpdate = actRevisarContratosTerminadosUpdate
end
end end
inherited SmallImages: TPngImageList inherited SmallImages: TPngImageList
PngImages = < PngImages = <

View File

@ -62,6 +62,8 @@ type
TBXItem40: TTBXItem; TBXItem40: TTBXItem;
actGenerarRecibo: TAction; actGenerarRecibo: TAction;
TBXItem53: TTBXItem; TBXItem53: TTBXItem;
actRevisarContratosTerminados: TAction;
TBXItem54: TTBXItem;
procedure FormShow(Sender: TObject); procedure FormShow(Sender: TObject);
procedure actGenerarAlbaranCliExecute(Sender: TObject); procedure actGenerarAlbaranCliExecute(Sender: TObject);
procedure actEliminarUpdate(Sender: TObject); procedure actEliminarUpdate(Sender: TObject);
@ -95,6 +97,8 @@ type
procedure actCancelarUpdate(Sender: TObject); procedure actCancelarUpdate(Sender: TObject);
procedure actGenerarReciboExecute(Sender: TObject); procedure actGenerarReciboExecute(Sender: TObject);
procedure actGenerarReciboUpdate(Sender: TObject); procedure actGenerarReciboUpdate(Sender: TObject);
procedure actRevisarContratosTerminadosExecute(Sender: TObject);
procedure actRevisarContratosTerminadosUpdate(Sender: TObject);
protected protected
FContratos: IBizContratoCliente; FContratos: IBizContratoCliente;
@ -188,7 +192,7 @@ begin
and (FContratos.SITUACION <> SITUACION_CONTRATO_TERMINADO) and (FContratos.SITUACION <> SITUACION_CONTRATO_TERMINADO)
and (FContratos.SITUACION <> SITUACION_CONTRATO_CANCELADO) and (FContratos.SITUACION <> SITUACION_CONTRATO_CANCELADO)
and ((FContratos.ENVIADA_REVISADA = CONST_CONTRATO_RECIBIDO_UECKO) and ((FContratos.ENVIADA_REVISADA = CONST_CONTRATO_RECIBIDO_UECKO)
or (FContratos.ENVIADA_REVISADA = CONST_CONTRATO_RECIBIDO_UECKO_DESDE_WEB)) or (FContratos.ENVIADA_REVISADA = CONST_PRESUPUESTO_RECIBIDO_UECKO_DESDE_WEB))
end; end;
procedure TfEditorContratosCliente.actAceptarExecute(Sender: TObject); procedure TfEditorContratosCliente.actAceptarExecute(Sender: TObject);
@ -511,6 +515,24 @@ begin
and (FContratos.ENVIADA_REVISADA = CONST_CONTRATO_DEFAULT ); and (FContratos.ENVIADA_REVISADA = CONST_CONTRATO_DEFAULT );
end; end;
procedure TfEditorContratosCliente.actRevisarContratosTerminadosExecute(Sender: TObject);
begin
inherited;
if (Application.MessageBox('Se va a cambiar la situación a TERMINADO todos los contratos de la lista cuya base imponible sea igual a la suma de la base imponible de sus facturas, ¿Desea continuar?', 'Atención', MB_YESNO) = IDYES) then
begin
FController.RevisarContratosTerminados(cbxListaAnos.Text);
actRefrescar.Execute;
end;
end;
procedure TfEditorContratosCliente.actRevisarContratosTerminadosUpdate(Sender: TObject);
begin
inherited;
(Sender as TAction).Enabled := HayDatos
and (cbxListaAnos.Text <> 'Todos');
end;
procedure TfEditorContratosCliente.actTerminarExecute(Sender: TObject); procedure TfEditorContratosCliente.actTerminarExecute(Sender: TObject);
var var
AContratos: IBizContratoCliente; AContratos: IBizContratoCliente;

Some files were not shown because too many files have changed in this diff Show More