Version 4.1.8

git-svn-id: https://192.168.0.254/svn/Proyectos.LuisLeon_FactuGES2/trunk@137 b2cfbe5a-eba1-4a0c-8b32-7feea0a119f2
This commit is contained in:
roberto 2011-10-03 17:47:25 +00:00
parent acca485d58
commit c03fa7301e
51 changed files with 8989 additions and 215 deletions

Binary file not shown.

View File

@ -1,3 +1,4 @@
DROP VIEW V_INF_VENTAS_ALB_ARTICULOS;
DROP VIEW V_INF_VENTAS_ARTICULOS;
DROP VIEW V_INF_ULTVEN_PORCLIENTE;
DROP VIEW V_INF_ULTVEN_PORARTICULO;
@ -316,3 +317,123 @@ on ((AGENTES_COMISIONES.ID_AGENTE = AGENTES.ID) and (AGENTES_COMISIONES.ID_PROVE
where (FACTURAS_CLIENTE_DETALLES.ID_ARTICULO is not null) and (FACTURAS_CLIENTE_DETALLES.ID_ARTICULO > 0) /*Quitamos conceptos libres*/
/*and (FACTURAS_CLIENTE_DETALLES.cantidad > 0) Quitamos los abonos*/
and (ARTICULOS.INVENTARIABLE = 1);
CREATE VIEW V_INF_VENTAS_ALB_ARTICULOS(
ID_ALBARAN,
ID_EMPRESA,
REFERENCIA_ALBARAN,
FECHA_ALBARAN,
IMPORTE_TOTAL_ALBARAN,
ID_ARTICULO,
FAMILIA,
REFERENCIA,
REFERENCIA_PROV,
DESCRIPCION,
COMISIONABLE,
INVENTARIABLE,
IMPORTE_UNIDAD_COSTE,
DESCUENTO_PROVEEDOR_COSTE,
IMPORTE_NETO_COSTE,
IMPORTE_PORTE_COSTE,
CANTIDAD,
IMPORTE_UNIDAD_VENTA,
DESCUENTO_CLIENTE_VENTA,
IMPORTE_NETO_VENTA,
IMPORTE_PORTE_VENTA,
IMPORTE_TOTAL_VENTA,
NIF_CIF_PROVEEDOR,
NOMBRE_PROVEEDOR,
CALLE_PROVEEDOR,
POBLACION_PROVEEDOR,
PROVINCIA_PROVEEDOR,
NIF_CIF_CLIENTE,
NOMBRE_CLIENTE,
NOMBRE_COMERCIAL_CLIENTE,
CALLE_CLIENTE,
POBLACION_CLIENTE,
PROVINCIA_CLIENTE,
NIF_CIF_AGENTE,
NOMBRE_AGENTE,
CALLE_AGENTE,
POBLACION_AGENTE,
PROVINCIA_AGENTE,
COMISION_AGENTE,
IMPORTE_COMISION_AGENTE)
AS
select
albaranes_cliente.ID,
albaranes_cliente.ID_EMPRESA,
albaranes_cliente.REFERENCIA,
albaranes_cliente.FECHA_ALBARAN,
albaranes_cliente.IMPORTE_TOTAL,
ALBARANES_CLIENTE_DETALLES.ID_ARTICULO,
ARTICULOS.FAMILIA,
ARTICULOS.REFERENCIA,
ARTICULOS.REFERENCIA_PROV,
ARTICULOS.DESCRIPCION,
ARTICULOS.COMISIONABLE,
ARTICULOS.INVENTARIABLE,
ARTICULOS.PRECIO_COSTE,
ARTICULOS.DESCUENTO,
ARTICULOS.PRECIO_NETO,
ARTICULOS.PRECIO_PORTE,
ALBARANES_CLIENTE_DETALLES.CANTIDAD,
ALBARANES_CLIENTE_DETALLES.IMPORTE_UNIDAD as importe_unidad_venta,
ALBARANES_CLIENTE_DETALLES.DESCUENTO,
case when ALBARANES_CLIENTE_DETALLES.CANTIDAD < 0 then
/*En caso de ser un abono el importe neto venta debe ser negativo para que los informes no salgan falseados*/
(-1)*(ALBARANES_CLIENTE_DETALLES.IMPORTE_UNIDAD - (ALBARANES_CLIENTE_DETALLES.IMPORTE_UNIDAD * (ALBARANES_CLIENTE_DETALLES.DESCUENTO/100)))
else
ALBARANES_CLIENTE_DETALLES.IMPORTE_UNIDAD - (ALBARANES_CLIENTE_DETALLES.IMPORTE_UNIDAD * (ALBARANES_CLIENTE_DETALLES.DESCUENTO/100))
end as importe_neto_venta,
ALBARANES_CLIENTE_DETALLES.IMPORTE_PORTE as importe_porte_venta,
ALBARANES_CLIENTE_DETALLES.IMPORTE_TOTAL,
PROVEEDORES.NIF_CIF,
PROVEEDORES.NOMBRE,
PROVEEDORES.CALLE,
PROVEEDORES.POBLACION,
PROVEEDORES.PROVINCIA,
CLIENTES.NIF_CIF,
CLIENTES.NOMBRE,
CLIENTES_DATOS.NOMBRE_COMERCIAL,
CLIENTES.CALLE,
CLIENTES.POBLACION,
CLIENTES.PROVINCIA,
AGENTES.NIF_CIF,
AGENTES.NOMBRE,
AGENTES.CALLE,
AGENTES.POBLACION,
AGENTES.PROVINCIA,
COALESCE(AGENTES_COMISIONES.COMISION, 0) AS COMISION,
(CASE COALESCE(AGENTES_COMISIONES.COMISION, 0) WHEN 0 THEN 0
ELSE ((ALBARANES_CLIENTE_DETALLES.IMPORTE_TOTAL * AGENTES_COMISIONES.COMISION)/100) END) as IMPORTE_COMISION
from ALBARANES_CLIENTE_DETALLES
left join ARTICULOS on (ARTICULOS.ID = ALBARANES_CLIENTE_DETALLES.ID_ARTICULO)
left join CONTACTOS PROVEEDORES on (PROVEEDORES.ID = ARTICULOS.ID_PROVEEDOR)
left join ALBARANES_CLIENTE on (ALBARANES_CLIENTE.ID = ALBARANES_CLIENTE_DETALLES.ID_ALBARAN)
left join CONTACTOS CLIENTES on (CLIENTES.ID = ALBARANES_CLIENTE.ID_CLIENTE)
left join CLIENTES_DATOS on (CLIENTES_DATOS.ID_CLIENTE = CLIENTES.ID)
left join CONTACTOS AGENTES on (AGENTES.ID = CLIENTES_DATOS.ID_AGENTE)
left join AGENTES_COMISIONES
on ((AGENTES_COMISIONES.ID_AGENTE = AGENTES.ID) and (AGENTES_COMISIONES.ID_PROVEEDOR = PROVEEDORES.ID))
where (ALBARANES_CLIENTE_DETALLES.ID_ARTICULO is not null) and (ALBARANES_CLIENTE_DETALLES.ID_ARTICULO > 0) /*Quitamos conceptos libres*/
/*and (FACTURAS_CLIENTE_DETALLES.cantidad > 0) Quitamos los abonos*/
and (ARTICULOS.INVENTARIABLE = 1)
;

View File

@ -53,7 +53,7 @@
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>VCLApplication</Borland.ProjectType>
<BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Language><Language Name="RootDir">C:\Archivos de programa\Borland\Delphi7\Bin\</Language></Language><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">4</VersionInfo><VersionInfo Name="MinorVer">1</VersionInfo><VersionInfo Name="Release">7</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.1.7.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.1.7.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Excluded_Packages></Excluded_Packages><Source><Source Name="MainSource">FactuGES.dpr</Source></Source></Delphi.Personality><ModelSupport>False</ModelSupport></BorlandProject></BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Language><Language Name="RootDir">C:\Archivos de programa\Borland\Delphi7\Bin\</Language></Language><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">4</VersionInfo><VersionInfo Name="MinorVer">1</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.1.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.1.8.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Excluded_Packages></Excluded_Packages><Source><Source Name="MainSource">FactuGES.dpr</Source></Source></Delphi.Personality><ModelSupport>False</ModelSupport></BorlandProject></BorlandProject>
</ProjectExtensions>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
<ItemGroup>

View File

@ -1,7 +1,7 @@
MAINICON ICON "C:\Codigo\Resources\Iconos\Factuges.ico"
1 VERSIONINFO
FILEVERSION 4,1,7,0
PRODUCTVERSION 4,1,7,0
FILEVERSION 4,1,8,0
PRODUCTVERSION 4,1,8,0
FILEFLAGSMASK 0x3FL
FILEFLAGS 0x00L
FILEOS 0x40004L
@ -13,10 +13,10 @@ BEGIN
BLOCK "0C0A04E4"
BEGIN
VALUE "CompanyName", "Rodax Software S.L.\0"
VALUE "FileVersion", "4.1.7.0\0"
VALUE "FileVersion", "4.1.8.0\0"
VALUE "InternalName", "FactuGES\0"
VALUE "ProductName", "FactuGES\0"
VALUE "ProductVersion", "4.1.7.0\0"
VALUE "ProductVersion", "4.1.8.0\0"
END
END
BLOCK "VarFileInfo"

Binary file not shown.

Binary file not shown.

View File

@ -14,4 +14,4 @@ END
/* C:\Codigo\Source\Modulos\Informe margen por articulo\Data\uDataModuleInfMargenArticulo.dfm */
/* C:\Codigo\Source\Modulos\Informe margen por articulo\Data\InfMargenArticulo_data.res */
/* c:\temp\dtf2FB.tmp */
/* c:\temp\dtf338.tmp */

View File

@ -13,4 +13,4 @@ BEGIN
END
/* C:\Codigo\Source\Modulos\Informe margen por articulo\Model\InfMargenArticulo_model.res */
/* c:\temp\dtf2F9.tmp */
/* c:\temp\dtf336.tmp */

View File

@ -16,4 +16,4 @@ END
/* C:\Codigo\Source\Modulos\Informe margen por articulo\Views\uViewInfMargenArticulo.dfm */
/* C:\Codigo\Source\Modulos\Informe margen por articulo\Views\uEditorInfMargenArticulo.dfm */
/* C:\Codigo\Source\Modulos\Informe margen por articulo\Views\InfMargenArticulo_view.res */
/* c:\temp\dtf2FF.tmp */
/* c:\temp\dtf33C.tmp */

View File

@ -31,11 +31,26 @@ requires
Informes_model,
InformesBase_controller,
GUIBase,
ApplicationBase;
ApplicationBase,
rtl,
vcl,
dbrtl,
cxLibraryD11,
dxThemeD11,
dxGDIPlusD11,
dxCoreD11,
vclx,
RemObjects_Core_D11,
DataAbstract_Core_D11,
vcldb,
dsnap,
adortl;
contains
uInfVentasArticuloController in 'uInfVentasArticuloController.pas',
uIEditorInfVentasArticulo in 'View\uIEditorInfVentasArticulo.pas',
uInfVentasArticuloInformeRegister in 'uInfVentasArticuloInformeRegister.pas';
uInfVentasArticuloInformeRegister in 'uInfVentasArticuloInformeRegister.pas',
uInfVentasAlbArticuloController in 'uInfVentasAlbArticuloController.pas',
uIEditorInfVentasAlbArticulo in 'View\uIEditorInfVentasAlbArticulo.pas';
end.

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>
<ProjectGuid>{5874467b-b5ec-4f13-a56b-36d9d93d49a5}</ProjectGuid>
<MainSource>InfVentasArticulo_controller.dpk</MainSource>
@ -39,44 +40,15 @@
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<BorlandProject xmlns=""> <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>
<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">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>
@ -89,30 +61,40 @@
<Excluded_Packages Name="C:\Documents and Settings\Usuario\Mis documentos\Borland Studio Projects\Bpl\EasyListviewD10.bpl">Muststang Peak EasyListview Runtime Package</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>
<Source>
<Source Name="MainSource">InfVentasArticulo_controller.dpk</Source>
</Source>
</Delphi.Personality> </BorlandProject></BorlandProject>
</Excluded_Packages><Source><Source Name="MainSource">InfVentasArticulo_controller.dpk</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
</ProjectExtensions>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
<ItemGroup>
<DelphiCompile Include="InfVentasArticulo_controller.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\..\..\Lib\ApplicationBase.dcp" />
<DCCReference Include="..\..\..\Lib\GUIBase.dcp" />
<DCCReference Include="..\..\..\Lib\InformesBase_controller.dcp" />
<DCCReference Include="..\..\..\Lib\InformesBase_view.dcp" />
<DCCReference Include="..\..\..\Lib\Informes_model.dcp" />
<DCCReference Include="..\..\..\Lib\InfVentasArticulo_data.dcp" />
<DCCReference Include="..\..\..\Lib\InfVentasArticulo_model.dcp" />
<DCCReference Include="uInfVentasAlbArticuloController.pas" />
<DCCReference Include="uInfVentasArticuloController.pas" />
<DCCReference Include="uInfVentasArticuloInformeRegister.pas" />
<DCCReference Include="View\adortl.dcp" />
<DCCReference Include="View\ApplicationBase.dcp" />
<DCCReference Include="View\cxLibraryD11.dcp" />
<DCCReference Include="View\DataAbstract_Core_D11.dcp" />
<DCCReference Include="View\dbrtl.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\InformesBase_controller.dcp" />
<DCCReference Include="View\InformesBase_view.dcp" />
<DCCReference Include="View\Informes_model.dcp" />
<DCCReference Include="View\InfVentasArticulo_data.dcp" />
<DCCReference Include="View\InfVentasArticulo_model.dcp" />
<DCCReference Include="View\RemObjects_Core_D11.dcp" />
<DCCReference Include="View\rtl.dcp" />
<DCCReference Include="View\uIEditorInfVentasAlbArticulo.pas" />
<DCCReference Include="View\uIEditorInfVentasArticulo.pas" />
<DCCReference Include="View\vcl.dcp" />
<DCCReference Include="View\vcldb.dcp" />
<DCCReference Include="View\vclx.dcp" />
</ItemGroup>
</Project>
<!-- EurekaLog First Line
[Exception Log]
EurekaLog Version=6011

View File

@ -0,0 +1,18 @@
unit uIEditorInfVentasAlbArticulo;
interface
uses
uEditorInformeBaseInforme, uBizInfVentasArticulo, uInfVentasAlbArticuloController;
type
IEditorInfVentasAlbArticulo = interface(IEditorInformeBaseInforme)
['{0A8FCEC2-6D9A-4188-8913-8DEA8FC092AA}']
function GetController : IInfVentasAlbArticuloController;
procedure SetController (const Value : IInfVentasAlbArticuloController);
property Controller : IInfVentasAlbArticuloController read GetController write SetController;
end;
implementation
end.

View File

@ -0,0 +1,110 @@
unit uInfVentasAlbArticuloController;
interface
uses
Classes, SysUtils, uDADataTable, uControllerBase, uEditorDBItem,
uBizInfVentasArticulo, uIDataModuleInfVentasArticulo, uInformeBaseController,
uBizInformes;
type
IInfVentasAlbArticuloController = interface (IInformeBaseController)
['{1EA7396B-D88E-4006-8BF3-C0A4BFFB16FD}']
function BuscarTodos(const AColumns: String; const AWhere: String): IBizInfVentasAlbArticulo;
end;
TInfVentasAlbArticuloController = class(TInterfacedObject, IInfVentasAlbArticuloController, IInformeBaseController)
protected
FDataModule : IDataModuleInfVentasArticulo;
function CreateEditor(const AName : String; const IID: TGUID; out Intf): Boolean;
function BuscarTodos(const AColumns: String; const AWhere: String): IBizInfVentasAlbArticulo;
procedure AsignarDataModule; virtual;
public
constructor Create; virtual;
destructor Destroy; override;
procedure Nuevo(AInforme : IBizInforme);
procedure Ver(AInforme : IBizInforme);
end;
implementation
uses
Forms, cxControls, DB, uEditorRegistryUtils,
uIEditorInfVentasAlbArticulo, uDataModuleUsuarios,
uDataModuleInfVentasArticulo, uFactuGES_App,
uDAInterfaces, uDataTableUtils,
uDateUtils, uROTypes, DateUtils, Controls, Windows,
dialogs, Variants, uControllerDetallesBase, uDialogUtils,
schInfVentasArticuloClient_Intf;
{ TInfVentasArticuloController }
procedure TInfVentasAlbArticuloController.AsignarDataModule;
begin
FDataModule := TdmInfVentasArticulo.Create(Nil);
end;
function TInfVentasAlbArticuloController.BuscarTodos(const AColumns: String; const AWhere: String): IBizInfVentasAlbArticulo;
begin
Result := FDataModule.GetItemsAlbaranes(AColumns, AWhere);
// FiltrarEmpresa(Result);
end;
constructor TInfVentasAlbArticuloController.Create;
begin
AsignarDataModule;
end;
function TInfVentasAlbArticuloController.CreateEditor(const AName: String; const IID: TGUID; out Intf): Boolean;
begin
Result := Supports(EditorRegistry.CreateEditor(AName), IID, Intf);
end;
destructor TInfVentasAlbArticuloController.Destroy;
begin
FDataModule := Nil;
inherited;
end;
procedure TInfVentasAlbArticuloController.Ver(AInforme: IBizInforme);
var
AEditor : IEditorInfVentasAlbArticulo;
begin
AEditor := NIL;
ShowHourglassCursor;
try
CreateEditor('EditorInfVentasAlbArticulo', IEditorInfVentasAlbArticulo, AEditor);
with (AEditor as IEditorInfVentasAlbArticulo) do
begin
if not Assigned(FDataModule) then
AsignarDataModule;
Controller := Self; //OJO ORDEN MUY IMPORTANTE
Informe := AInforme;
end;
finally
HideHourglassCursor;
end;
if Assigned(AEditor) then
try
AEditor.ShowModal;
AEditor.Release;
finally
AEditor := NIL;
end;
end;
procedure TInfVentasAlbArticuloController.Nuevo(AInforme: IBizInforme);
begin
AInforme.Insert;
AInforme.CATEGORIA := 'VENTAS ARTICULOS';
AInforme.CONTROLLER := 'InfVentasAlbArticuloController';
AInforme.ID_EMPRESA := AppFactuGES.EmpresaActiva.ID;
end;
end.

View File

@ -74,7 +74,7 @@ end;
function TInfVentasArticuloController.BuscarTodos(const AColumns: String; const AWhere: String): IBizInfVentasArticulo;
begin
Result := FDataModule.GetItems(AColumns, AWhere);
Result := FDataModule.GetItemsFacturas(AColumns, AWhere);
// FiltrarEmpresa(Result);
end;

View File

@ -8,16 +8,18 @@ procedure UnregisterInformes;
implementation
uses
uInformeRegistryUtils, uInfVentasArticuloController;
uInformeRegistryUtils, uInfVentasArticuloController, uInfVentasAlbArticuloController;
procedure RegisterInformes;
begin
InformeRegistry.RegisterClass(TInfVentasArticuloController, 'InfVentasArticuloController');
InformeRegistry.RegisterClass(TInfVentasAlbArticuloController, 'InfVentasAlbArticuloController');
end;
procedure UnregisterInformes;
begin
InformeRegistry.UnRegisterClass(TInfVentasArticuloController);
InformeRegistry.UnRegisterClass(TInfVentasAlbArticuloController);
end;
end.

View File

@ -14,4 +14,4 @@ END
/* C:\Codigo\Source\Modulos\Informe ventas por articulo\Data\uDataModuleInfVentasArticulo.dfm */
/* C:\Codigo\Source\Modulos\Informe ventas por articulo\Data\InfVentasArticulo_data.res */
/* c:\temp\dtf2F1.tmp */
/* c:\temp\dtf32E.tmp */

View File

@ -328,4 +328,235 @@ inherited dmInfVentasArticulo: TdmInfVentasArticulo
Left = 280
Top = 152
end
object rda_InfVentasAlbArticulo: TDARemoteDataAdapter
DataStreamer = Bin2DataStreamer
GetSchemaCall.RemoteService = RORemoteService
GetDataCall.RemoteService = RORemoteService
GetDataCall.MethodName = 'GetData'
GetDataCall.Params = <
item
Name = 'Result'
DataType = rtBinary
Flag = fResult
Value = Null
end
item
Name = 'aTableNameArray'
DataType = rtUserDefined
Flag = fIn
TypeName = 'StringArray'
Value = Null
end
item
Name = 'aTableRequestInfoArray'
DataType = rtUserDefined
Flag = fIn
TypeName = 'TableRequestInfoArray'
Value = Null
end>
GetDataCall.Default = False
GetDataCall.OutgoingTableNamesParameter = 'aTableNameArray'
GetDataCall.OutgoingTableRequestInfosParameter = 'aTableRequestInfoArray'
GetDataCall.IncomingDataParameter = 'Result'
GetDataCall.OutgoingIncludeSchemaParameter = 'aIncludeSchema'
GetDataCall.OutgoingMaxRecordsParameter = 'aMaxRecords'
UpdateDataCall.RemoteService = RORemoteService
GetScriptsCall.RemoteService = RORemoteService
RemoteService = RORemoteService
Left = 280
Top = 216
end
object tbl_InfVentasAlbArticulo: TDAMemDataTable
RemoteUpdatesOptions = []
Fields = <
item
Name = 'ID_ALBARAN'
DataType = datInteger
end
item
Name = 'ID_EMPRESA'
DataType = datInteger
end
item
Name = 'REFERENCIA_ALBARAN'
DataType = datString
Size = 255
end
item
Name = 'FECHA_ALBARAN'
DataType = datDateTime
end
item
Name = 'IMPORTE_TOTAL_ALBARAN'
DataType = datCurrency
end
item
Name = 'ID_ARTICULO'
DataType = datInteger
end
item
Name = 'FAMILIA'
DataType = datString
Size = 255
end
item
Name = 'REFERENCIA'
DataType = datString
Size = 255
end
item
Name = 'REFERENCIA_PROV'
DataType = datString
Size = 255
end
item
Name = 'DESCRIPCION'
DataType = datString
Size = 255
end
item
Name = 'COMISIONABLE'
DataType = datSmallInt
end
item
Name = 'INVENTARIABLE'
DataType = datSmallInt
end
item
Name = 'IMPORTE_UNIDAD_COSTE'
DataType = datCurrency
end
item
Name = 'DESCUENTO_PROVEEDOR_COSTE'
DataType = datFloat
end
item
Name = 'IMPORTE_NETO_COSTE'
DataType = datCurrency
end
item
Name = 'IMPORTE_PORTE_COSTE'
DataType = datCurrency
end
item
Name = 'CANTIDAD'
DataType = datCurrency
end
item
Name = 'IMPORTE_UNIDAD_VENTA'
DataType = datCurrency
end
item
Name = 'DESCUENTO_CLIENTE_VENTA'
DataType = datFloat
end
item
Name = 'IMPORTE_NETO_VENTA'
DataType = datFloat
end
item
Name = 'IMPORTE_PORTE_VENTA'
DataType = datCurrency
end
item
Name = 'IMPORTE_TOTAL_VENTA'
DataType = datCurrency
end
item
Name = 'NIF_CIF_PROVEEDOR'
DataType = datString
Size = 15
end
item
Name = 'NOMBRE_PROVEEDOR'
DataType = datString
Size = 255
end
item
Name = 'CALLE_PROVEEDOR'
DataType = datString
Size = 255
end
item
Name = 'POBLACION_PROVEEDOR'
DataType = datString
Size = 255
end
item
Name = 'PROVINCIA_PROVEEDOR'
DataType = datString
Size = 255
end
item
Name = 'NIF_CIF_CLIENTE'
DataType = datString
Size = 15
end
item
Name = 'NOMBRE_CLIENTE'
DataType = datString
Size = 255
end
item
Name = 'NOMBRE_COMERCIAL_CLIENTE'
DataType = datString
Size = 255
end
item
Name = 'CALLE_CLIENTE'
DataType = datString
Size = 255
end
item
Name = 'POBLACION_CLIENTE'
DataType = datString
Size = 255
end
item
Name = 'PROVINCIA_CLIENTE'
DataType = datString
Size = 255
end
item
Name = 'NIF_CIF_AGENTE'
DataType = datString
Size = 15
end
item
Name = 'NOMBRE_AGENTE'
DataType = datString
Size = 255
end
item
Name = 'CALLE_AGENTE'
DataType = datString
Size = 255
end
item
Name = 'POBLACION_AGENTE'
DataType = datString
Size = 255
end
item
Name = 'PROVINCIA_AGENTE'
DataType = datString
Size = 255
end
item
Name = 'COMISION_AGENTE'
DataType = datFloat
end
item
Name = 'IMPORTE_COMISION_AGENTE'
DataType = datFloat
end>
Params = <>
MasterMappingMode = mmDataRequest
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteDataAdapter = rda_InfVentasAlbArticulo
LogicalName = 'InfVentasAlbArticulo'
IndexDefs = <>
Left = 280
Top = 272
end
end

View File

@ -25,13 +25,20 @@ type
rda_TablaVacia: TDARemoteDataAdapter;
tbl_TablaVacia: TDAMemDataTable;
tbl_InfVentasArticulo: TDAMemDataTable;
rda_InfVentasAlbArticulo: TDARemoteDataAdapter;
tbl_InfVentasAlbArticulo: TDAMemDataTable;
procedure DAClientDataModuleCreate(Sender: TObject);
private
procedure InitRDA(var aDataTable: TDAMemDataTable; const AWhere: String; aIncludeSchema: Boolean; AMaxRecords: integer);
procedure InitRDAFacturas(var aDataTable: TDAMemDataTable; const AWhere: String; aIncludeSchema: Boolean; AMaxRecords: integer);
procedure InitRDAAlbaranes(var aDataTable: TDAMemDataTable; const AWhere: String; aIncludeSchema: Boolean; AMaxRecords: integer);
// function GetItemsFacturas(const AColumns: String; const AWhere: String) : IBizInfVentasArticulo;
// function GetItemsAlbaranes(const AColumns: String; const AWhere: String) : IBizInfVentasAlbArticulo;
// function GetItems(const AColumns, AWhere: String): IBizInfVentasArticulo;
public
function GetItems(const AColumns: String; const AWhere: String) : IBizInfVentasArticulo;
function GetItemsFacturas(const AColumns: String; const AWhere: String) : IBizInfVentasArticulo;
function GetItemsAlbaranes(const AColumns: String; const AWhere: String) : IBizInfVentasAlbArticulo;
function GetNameColumns: String;
end;
@ -51,7 +58,7 @@ uses
const
CAMPOS_AVG = '#IMPORTE_NETO_VENTA#';
CAMPOS_SUMA = '#IMPORTE_TOTAL_FACTURA#IMPORTE_UNIDAD_COSTE#IMPORTE_NETO_COSTE#IMPORTE_PORTE_COSTE#CANTIDAD#IMPORTE_UNIDAD_VENTA#IMPORTE_PORTE_VENTA#IMPORTE_TOTAL_VENTA#IMPORTE_COMISION_AGENTE#';
CAMPOS_SUMA = '#IMPORTE_TOTAL_ALBARAN#IMPORTE_TOTAL_FACTURA#IMPORTE_UNIDAD_COSTE#IMPORTE_NETO_COSTE#IMPORTE_PORTE_COSTE#CANTIDAD#IMPORTE_UNIDAD_VENTA#IMPORTE_PORTE_VENTA#IMPORTE_TOTAL_VENTA#IMPORTE_COMISION_AGENTE#';
procedure TdmInfVentasArticulo.DAClientDataModuleCreate(Sender: TObject);
@ -60,7 +67,7 @@ begin
RORemoteService.Message := dmConexion.Message;
end;
function TdmInfVentasArticulo.GetItems(const AColumns: String; const AWhere: String): IBizInfVentasArticulo;
function TdmInfVentasArticulo.GetItemsFacturas(const AColumns: String; const AWhere: String): IBizInfVentasArticulo;
var
AInfVentasArticulo : TDAMemDataTable;
begin
@ -70,7 +77,7 @@ begin
AInfVentasArticulo.BusinessRulesID := BIZ_InfVentasArticulo;
(AInfVentasArticulo as IBizInfVentasArticulo).VisibleColumns := AColumns;
InitRDA(AInfVentasArticulo, Awhere, True, 0);
InitRDAFacturas(AInfVentasArticulo, Awhere, True, 0);
AInfVentasArticulo.Close;
Result := (AInfVentasArticulo as IBizInfVentasArticulo);
@ -79,6 +86,26 @@ begin
end;
end;
function TdmInfVentasArticulo.GetItemsAlbaranes(const AColumns,
AWhere: String): IBizInfVentasAlbArticulo;
var
AInfVentasAlbArticulo : TDAMemDataTable;
begin
ShowHourglassCursor;
try
AInfVentasAlbArticulo := CloneDataTable(tbl_TablaVacia);
AInfVentasAlbArticulo.BusinessRulesID := BIZ_InfVentasAlbArticulo;
(AInfVentasAlbArticulo as IBizInfVentasAlbArticulo).VisibleColumns := AColumns;
InitRDAAlbaranes(AInfVentasAlbArticulo, Awhere, True, 0);
AInfVentasAlbArticulo.Close;
Result := (AInfVentasAlbArticulo as IBizInfVentasAlbArticulo);
finally
HideHourglassCursor;
end;
end;
function TdmInfVentasArticulo.GetNameColumns: String;
var
AList : TStringList;
@ -95,7 +122,35 @@ begin
end;
end;
procedure TdmInfVentasArticulo.InitRDA(var aDataTable: TDAMemDataTable; const AWhere: String;
procedure TdmInfVentasArticulo.InitRDAAlbaranes(var aDataTable: TDAMemDataTable;
const AWhere: String; aIncludeSchema: Boolean; AMaxRecords: integer);
var
ASql: String;
begin
with tbl_TablaVacia do begin
Close;
with TReplicarDataSet.Create do
begin
FROM_SQL := 'FROM V_INF_VENTAS_ALB_ARTICULOS ' + 'where (' + fld_InfVentasArticuloID_EMPRESA + ' = ' + IntToStr(AppFactuGES.EmpresaActiva.ID) + ') and ' + AWhere ;
Columnas := (aDataTable as IBizInfVentasAlbArticulo).VisibleColumns;
ColumnasQueSuman := CAMPOS_SUMA;
ColumnasQueAVG := CAMPOS_AVG;
try
ASql := GenerateNewSQL;
dmBase.EscribirLog(ASql);
finally
Free;
end;
end;
rda_TablaVacia.GetDataCall.ParamByName('aSQLText').AsString := ASql;
MaxRecords := AMaxRecords;
rda_TablaVacia.Fill([tbl_TablaVacia], true, aIncludeSchema);
end;
end;
procedure TdmInfVentasArticulo.InitRDAFacturas(var aDataTable: TDAMemDataTable; const AWhere: String;
aIncludeSchema: Boolean; AMaxRecords: integer);
var
ASql: String;

View File

@ -8,7 +8,9 @@ uses
type
IDataModuleInfVentasArticulo = interface
['{802EC507-6C31-4AEB-B481-577D177D474D}']
function GetItems(const AColumns: String; const AWhere: String) : IBizInfVentasArticulo;
// function GetItems(const AColumns: String; const AWhere: String) : IBizInfVentasArticulo;
function GetItemsFacturas(const AColumns: String; const AWhere: String) : IBizInfVentasArticulo;
function GetItemsAlbaranes(const AColumns: String; const AWhere: String) : IBizInfVentasAlbArticulo;
function GetNameColumns: String;
end;

View File

@ -13,4 +13,4 @@ BEGIN
END
/* C:\Codigo\Source\Modulos\Informe ventas por articulo\Model\InfVentasArticulo_model.res */
/* c:\temp\dtf2EF.tmp */
/* c:\temp\dtf32C.tmp */

View File

@ -8,6 +8,7 @@ uses
const
BIZ_InfVentasArticulo = 'Client.InfVentasArticulo';
BIZ_InfVentasAlbArticulo = 'Client.InfVentasAlbArticulo';
type
IBizInfVentasArticulo = interface(IInfVentasArticulo)
@ -17,6 +18,13 @@ type
property VisibleColumns : String read GetVisibleColumns write SetVisibleColumns;
end;
IBizInfVentasAlbArticulo = interface(IInfVentasAlbArticulo)
['{85BA702E-85F5-4725-BF13-3E017E76C37A}']
function GetVisibleColumns: String;
procedure SetVisibleColumns(const Value: String);
property VisibleColumns : String read GetVisibleColumns write SetVisibleColumns;
end;
TBizInfVentasArticulo = class(TInfVentasArticuloDataTableRules, IBizInfVentasArticulo)
private
FVisibleColumns : String;
@ -27,6 +35,15 @@ type
property VisibleColumns : String read GetVisibleColumns write SetVisibleColumns;
end;
TBizInfVentasAlbArticulo = class(TInfVentasAlbArticuloDataTableRules, IBizInfVentasAlbArticulo)
private
FVisibleColumns : String;
protected
function GetVisibleColumns: String;
procedure SetVisibleColumns(const Value: String);
public
property VisibleColumns : String read GetVisibleColumns write SetVisibleColumns;
end;
implementation
@ -42,8 +59,21 @@ begin
FVisibleColumns := Value
end;
{ TBizInfVentasAlbArticulo }
function TBizInfVentasAlbArticulo.GetVisibleColumns: String;
begin
Result := FVisibleColumns
end;
procedure TBizInfVentasAlbArticulo.SetVisibleColumns(const Value: String);
begin
FVisibleColumns := Value
end;
initialization
RegisterDataTableRules(BIZ_InfVentasArticulo, TBizInfVentasArticulo);
RegisterDataTableRules(BIZ_InfVentasAlbArticulo, TBizInfVentasAlbArticulo);
finalization

View File

@ -384,6 +384,360 @@ object srvInfVentasArticulo: TsrvInfVentasArticulo
end>
Name = 'TablaVacia'
Fields = <>
end
item
Params = <>
Statements = <
item
Connection = 'IBX'
Default = True
TargetTable = 'V_INF_VENTAS_ALB_ARTICULOS'
StatementType = stAutoSQL
ColumnMappings = <
item
DatasetField = 'ID_EMPRESA'
TableField = 'ID_EMPRESA'
end
item
DatasetField = 'REFERENCIA_ALBARAN'
TableField = 'REFERENCIA_ALBARAN'
end
item
DatasetField = 'FECHA_ALBARAN'
TableField = 'FECHA_ALBARAN'
end
item
DatasetField = 'IMPORTE_TOTAL_ALBARAN'
TableField = 'IMPORTE_TOTAL_ALBARAN'
end
item
DatasetField = 'ID_ARTICULO'
TableField = 'ID_ARTICULO'
end
item
DatasetField = 'FAMILIA'
TableField = 'FAMILIA'
end
item
DatasetField = 'REFERENCIA'
TableField = 'REFERENCIA'
end
item
DatasetField = 'REFERENCIA_PROV'
TableField = 'REFERENCIA_PROV'
end
item
DatasetField = 'DESCRIPCION'
TableField = 'DESCRIPCION'
end
item
DatasetField = 'COMISIONABLE'
TableField = 'COMISIONABLE'
end
item
DatasetField = 'INVENTARIABLE'
TableField = 'INVENTARIABLE'
end
item
DatasetField = 'IMPORTE_UNIDAD_COSTE'
TableField = 'IMPORTE_UNIDAD_COSTE'
end
item
DatasetField = 'DESCUENTO_PROVEEDOR_COSTE'
TableField = 'DESCUENTO_PROVEEDOR_COSTE'
end
item
DatasetField = 'IMPORTE_NETO_COSTE'
TableField = 'IMPORTE_NETO_COSTE'
end
item
DatasetField = 'IMPORTE_PORTE_COSTE'
TableField = 'IMPORTE_PORTE_COSTE'
end
item
DatasetField = 'CANTIDAD'
TableField = 'CANTIDAD'
end
item
DatasetField = 'IMPORTE_UNIDAD_VENTA'
TableField = 'IMPORTE_UNIDAD_VENTA'
end
item
DatasetField = 'DESCUENTO_CLIENTE_VENTA'
TableField = 'DESCUENTO_CLIENTE_VENTA'
end
item
DatasetField = 'IMPORTE_NETO_VENTA'
TableField = 'IMPORTE_NETO_VENTA'
end
item
DatasetField = 'IMPORTE_PORTE_VENTA'
TableField = 'IMPORTE_PORTE_VENTA'
end
item
DatasetField = 'IMPORTE_TOTAL_VENTA'
TableField = 'IMPORTE_TOTAL_VENTA'
end
item
DatasetField = 'NIF_CIF_PROVEEDOR'
TableField = 'NIF_CIF_PROVEEDOR'
end
item
DatasetField = 'NOMBRE_PROVEEDOR'
TableField = 'NOMBRE_PROVEEDOR'
end
item
DatasetField = 'CALLE_PROVEEDOR'
TableField = 'CALLE_PROVEEDOR'
end
item
DatasetField = 'POBLACION_PROVEEDOR'
TableField = 'POBLACION_PROVEEDOR'
end
item
DatasetField = 'PROVINCIA_PROVEEDOR'
TableField = 'PROVINCIA_PROVEEDOR'
end
item
DatasetField = 'NIF_CIF_CLIENTE'
TableField = 'NIF_CIF_CLIENTE'
end
item
DatasetField = 'NOMBRE_CLIENTE'
TableField = 'NOMBRE_CLIENTE'
end
item
DatasetField = 'NOMBRE_COMERCIAL_CLIENTE'
TableField = 'NOMBRE_COMERCIAL_CLIENTE'
end
item
DatasetField = 'CALLE_CLIENTE'
TableField = 'CALLE_CLIENTE'
end
item
DatasetField = 'POBLACION_CLIENTE'
TableField = 'POBLACION_CLIENTE'
end
item
DatasetField = 'PROVINCIA_CLIENTE'
TableField = 'PROVINCIA_CLIENTE'
end
item
DatasetField = 'NIF_CIF_AGENTE'
TableField = 'NIF_CIF_AGENTE'
end
item
DatasetField = 'NOMBRE_AGENTE'
TableField = 'NOMBRE_AGENTE'
end
item
DatasetField = 'CALLE_AGENTE'
TableField = 'CALLE_AGENTE'
end
item
DatasetField = 'POBLACION_AGENTE'
TableField = 'POBLACION_AGENTE'
end
item
DatasetField = 'PROVINCIA_AGENTE'
TableField = 'PROVINCIA_AGENTE'
end
item
DatasetField = 'COMISION_AGENTE'
TableField = 'COMISION_AGENTE'
end
item
DatasetField = 'IMPORTE_COMISION_AGENTE'
TableField = 'IMPORTE_COMISION_AGENTE'
end
item
DatasetField = 'ID_ALBARAN'
TableField = 'ID_ALBARAN'
end>
end>
Name = 'InfVentasAlbArticulo'
Fields = <
item
Name = 'ID_ALBARAN'
DataType = datInteger
end
item
Name = 'ID_EMPRESA'
DataType = datInteger
end
item
Name = 'REFERENCIA_ALBARAN'
DataType = datString
Size = 255
end
item
Name = 'FECHA_ALBARAN'
DataType = datDateTime
end
item
Name = 'IMPORTE_TOTAL_ALBARAN'
DataType = datCurrency
end
item
Name = 'ID_ARTICULO'
DataType = datInteger
end
item
Name = 'FAMILIA'
DataType = datString
Size = 255
end
item
Name = 'REFERENCIA'
DataType = datString
Size = 255
end
item
Name = 'REFERENCIA_PROV'
DataType = datString
Size = 255
end
item
Name = 'DESCRIPCION'
DataType = datString
Size = 255
end
item
Name = 'COMISIONABLE'
DataType = datSmallInt
end
item
Name = 'INVENTARIABLE'
DataType = datSmallInt
end
item
Name = 'IMPORTE_UNIDAD_COSTE'
DataType = datCurrency
end
item
Name = 'DESCUENTO_PROVEEDOR_COSTE'
DataType = datFloat
end
item
Name = 'IMPORTE_NETO_COSTE'
DataType = datCurrency
end
item
Name = 'IMPORTE_PORTE_COSTE'
DataType = datCurrency
end
item
Name = 'CANTIDAD'
DataType = datCurrency
end
item
Name = 'IMPORTE_UNIDAD_VENTA'
DataType = datCurrency
end
item
Name = 'DESCUENTO_CLIENTE_VENTA'
DataType = datFloat
end
item
Name = 'IMPORTE_NETO_VENTA'
DataType = datFloat
end
item
Name = 'IMPORTE_PORTE_VENTA'
DataType = datCurrency
end
item
Name = 'IMPORTE_TOTAL_VENTA'
DataType = datCurrency
end
item
Name = 'NIF_CIF_PROVEEDOR'
DataType = datString
Size = 15
end
item
Name = 'NOMBRE_PROVEEDOR'
DataType = datString
Size = 255
end
item
Name = 'CALLE_PROVEEDOR'
DataType = datString
Size = 255
end
item
Name = 'POBLACION_PROVEEDOR'
DataType = datString
Size = 255
end
item
Name = 'PROVINCIA_PROVEEDOR'
DataType = datString
Size = 255
end
item
Name = 'NIF_CIF_CLIENTE'
DataType = datString
Size = 15
end
item
Name = 'NOMBRE_CLIENTE'
DataType = datString
Size = 255
end
item
Name = 'NOMBRE_COMERCIAL_CLIENTE'
DataType = datString
Size = 255
end
item
Name = 'CALLE_CLIENTE'
DataType = datString
Size = 255
end
item
Name = 'POBLACION_CLIENTE'
DataType = datString
Size = 255
end
item
Name = 'PROVINCIA_CLIENTE'
DataType = datString
Size = 255
end
item
Name = 'NIF_CIF_AGENTE'
DataType = datString
Size = 15
end
item
Name = 'NOMBRE_AGENTE'
DataType = datString
Size = 255
end
item
Name = 'CALLE_AGENTE'
DataType = datString
Size = 255
end
item
Name = 'POBLACION_AGENTE'
DataType = datString
Size = 255
end
item
Name = 'PROVINCIA_AGENTE'
DataType = datString
Size = 255
end
item
Name = 'COMISION_AGENTE'
DataType = datFloat
end
item
Name = 'IMPORTE_COMISION_AGENTE'
DataType = datFloat
end>
end>
JoinDataTables = <>
UnionDataTables = <>

View File

@ -30,12 +30,56 @@ requires
GUIBase,
Informes_controller,
Informes_view,
Informes_data;
Informes_data,
rtl,
vcl,
dbrtl,
cxLibraryD11,
dxThemeD11,
dxGDIPlusD11,
dxCoreD11,
vclx,
cxGridD11,
cxPageControlD11,
cxExtEditorsD11,
cxDataD11,
cxEditorsD11,
vcljpg,
vcldb,
cxExportD11,
dxPSCoreD11,
dxComnD11,
DataAbstract_Core_D11,
dsnap,
adortl,
RemObjects_Core_D11,
dxPScxCommonD11,
dxPSLnksD11,
designide,
xmlrtl,
vclactnband,
vclshlctrls,
dxPScxGrid6LnkD11,
dclcxLibraryD11,
PngComponentsD10,
PNG_D10,
tb2k_d10,
tbx_d10,
GUISDK_D11R,
JvStdCtrlsD11R,
JclVcl,
Jcl,
JvCoreD11R,
JvSystemD11R,
JvPageCompsD11R;
contains
uViewInfVentasArticulo in 'uViewInfVentasArticulo.pas' {frViewInfVentasArticulo: TFrame},
uInfVentasArticuloViewRegister in 'uInfVentasArticuloViewRegister.pas',
uEditorInfVentasArticulo in 'uEditorInfVentasArticulo.pas' {frEditorInfVentasArticulo: TForm},
uViewInfVentasArticuloGrid in 'uViewInfVentasArticuloGrid.pas' {frViewInfVentasArticuloGrid: TFrame};
uViewInfVentasArticuloGrid in 'uViewInfVentasArticuloGrid.pas' {frViewInfVentasArticuloGrid: TFrame},
uViewInfVentasAlbArticuloGrid in 'uViewInfVentasAlbArticuloGrid.pas' {frViewInfVentasAlbArticuloGrid: TFrame},
uViewInfVentasAlbArticulo in 'uViewInfVentasAlbArticulo.pas' {frViewInfVentasAlbArticulo: TFrame},
uEditorInfVentasAlbArticulo in 'uEditorInfVentasAlbArticulo.pas' {frEditorInfVentasAlbArticulo: TForm};
end.

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>
<ProjectGuid>{87a074ad-cc3c-426d-af6d-c5febdd2dd07}</ProjectGuid>
<MainSource>InfVentasArticulo_view.dpk</MainSource>
@ -44,6 +45,14 @@
<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><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><Source><Source Name="MainSource">InfVentasArticulo_view.dpk</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
</ProjectExtensions>
@ -52,17 +61,63 @@
<DelphiCompile Include="InfVentasArticulo_view.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\..\Lib\GUIBase.dcp" />
<DCCReference Include="..\..\Lib\Informes_controller.dcp" />
<DCCReference Include="..\..\Lib\Informes_data.dcp" />
<DCCReference Include="..\..\Lib\Informes_view.dcp" />
<DCCReference Include="..\..\Lib\InfVentasArticulo_controller.dcp" />
<DCCReference Include="..\..\Lib\InfVentasArticulo_model.dcp" />
<DCCReference Include="adortl.dcp" />
<DCCReference Include="cxDataD11.dcp" />
<DCCReference Include="cxEditorsD11.dcp" />
<DCCReference Include="cxExportD11.dcp" />
<DCCReference Include="cxExtEditorsD11.dcp" />
<DCCReference Include="cxGridD11.dcp" />
<DCCReference Include="cxLibraryD11.dcp" />
<DCCReference Include="cxPageControlD11.dcp" />
<DCCReference Include="DataAbstract_Core_D11.dcp" />
<DCCReference Include="dbrtl.dcp" />
<DCCReference Include="dclcxLibraryD11.dcp" />
<DCCReference Include="designide.dcp" />
<DCCReference Include="dsnap.dcp" />
<DCCReference Include="dxComnD11.dcp" />
<DCCReference Include="dxCoreD11.dcp" />
<DCCReference Include="dxGDIPlusD11.dcp" />
<DCCReference Include="dxPSCoreD11.dcp" />
<DCCReference Include="dxPScxCommonD11.dcp" />
<DCCReference Include="dxPScxGrid6LnkD11.dcp" />
<DCCReference Include="dxPSLnksD11.dcp" />
<DCCReference Include="dxThemeD11.dcp" />
<DCCReference Include="GUIBase.dcp" />
<DCCReference Include="GUISDK_D11R.dcp" />
<DCCReference Include="Informes_controller.dcp" />
<DCCReference Include="Informes_data.dcp" />
<DCCReference Include="Informes_view.dcp" />
<DCCReference Include="InfVentasArticulo_controller.dcp" />
<DCCReference Include="InfVentasArticulo_model.dcp" />
<DCCReference Include="Jcl.dcp" />
<DCCReference Include="JclVcl.dcp" />
<DCCReference Include="JvCoreD11R.dcp" />
<DCCReference Include="JvPageCompsD11R.dcp" />
<DCCReference Include="JvStdCtrlsD11R.dcp" />
<DCCReference Include="JvSystemD11R.dcp" />
<DCCReference Include="PngComponentsD10.dcp" />
<DCCReference Include="PNG_D10.dcp" />
<DCCReference Include="RemObjects_Core_D11.dcp" />
<DCCReference Include="rtl.dcp" />
<DCCReference Include="tb2k_d10.dcp" />
<DCCReference Include="tbx_d10.dcp" />
<DCCReference Include="uEditorInfVentasAlbArticulo.pas">
<Form>frEditorInfVentasAlArticulo</Form>
<DesignClass>TForm</DesignClass>
</DCCReference>
<DCCReference Include="uEditorInfVentasArticulo.pas">
<Form>frEditorInfVentasArticulo</Form>
<DesignClass>TForm</DesignClass>
</DCCReference>
<DCCReference Include="uInfVentasArticuloViewRegister.pas" />
<DCCReference Include="uViewInfVentasAlbArticulo.pas">
<Form>frViewInfVentasAlbArticulo</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="uViewInfVentasAlbArticuloGrid.pas">
<Form>frViewInfVentasAlbArticuloGrid</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="uViewInfVentasArticulo.pas">
<Form>frViewInfVentasArticulo</Form>
<DesignClass>TFrame</DesignClass>
@ -71,6 +126,13 @@
<Form>frViewInfVentasArticuloGrid</Form>
<DesignClass>TFrame</DesignClass>
</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>
</Project>
<!-- EurekaLog First Line

View File

@ -15,5 +15,8 @@ END
/* C:\Codigo\Source\Modulos\Informe ventas por articulo\Views\uViewInfVentasArticuloGrid.dfm */
/* C:\Codigo\Source\Modulos\Informe ventas por articulo\Views\uViewInfVentasArticulo.dfm */
/* C:\Codigo\Source\Modulos\Informe ventas por articulo\Views\uEditorInfVentasArticulo.dfm */
/* C:\Codigo\Source\Modulos\Informe ventas por articulo\Views\uViewInfVentasAlbArticuloGrid.dfm */
/* C:\Codigo\Source\Modulos\Informe ventas por articulo\Views\uViewInfVentasAlbArticulo.dfm */
/* C:\Codigo\Source\Modulos\Informe ventas por articulo\Views\uEditorInfVentasAlbArticulo.dfm */
/* C:\Codigo\Source\Modulos\Informe ventas por articulo\Views\InfVentasArticulo_view.res */
/* c:\temp\dtf2F5.tmp */
/* c:\temp\dtf332.tmp */

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,291 @@
unit uEditorInfVentasAlbArticulo;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uEditorInformeBaseInforme, DB, uDADataTable, JvAppStorage,
JvAppRegistryStorage, JvComponentBase, JvFormPlacement, ImgList,
PngImageList, StdActns, ActnList, ComCtrls, TBX, TB2Item, TB2Dock,
TB2Toolbar, ExtCtrls, JvExControls, JvComponent, JvNavigationPane, uBizInformes,
uCustomView, uViewBase, uViewInformeBase, uViewInfVentasAlbArticulo,
Grids, DBGrids, pngimage, JvExComCtrls, JvStatusBar, uInfVentasAlbArticuloController,
uIEditorInfVentasAlbArticulo, uBizInfVentasArticulo, uInformesController,
uViewGridBase, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxDataStorage, cxEdit, cxDBData, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxGridLevel, cxClasses, cxControls, cxGridCustomView,
cxGrid, TB2ExtItems, TBXExtItems, uDAInterfaces, cxContainer, cxLabel;
type
TfEditorInfVentasAlbArticulo = class(TfEditorInformeBaseInforme, IEditorInfVentasAlbArticulo)
TBXSeparatorItem16: TTBXSeparatorItem;
tbxiExpandir: TTBXItem;
tbxiContraer: TTBXItem;
tbxiAnchoAuto: TTBXItem;
actExpandir: TAction;
actContraer: TAction;
actAnchoAuto: TAction;
TBXItem37: TTBXItem;
TBXItem36: TTBXItem;
TBXItem35: TTBXItem;
TBXSeparatorItem17: TTBXSeparatorItem;
frViewInfVentasAlbArticulo1: TfrViewInfVentasAlbArticulo;
procedure actRefrescarExecute(Sender: TObject);
procedure actExpandirExecute(Sender: TObject);
procedure actContraerExecute(Sender: TObject);
procedure actAnchoAutoExecute(Sender: TObject);
procedure CustomEditorCreate(Sender: TObject);
procedure CustomEditorGetModified(Sender: TObject; var Modified: Boolean);
procedure FormShow(Sender: TObject);
procedure actPrevisualizarExecute(Sender: TObject);
procedure actImprimirExecute(Sender: TObject);
procedure actConfPaginaExecute(Sender: TObject);
private
FInformesController: IInformesController;
procedure RestaurarConfiguracion;
procedure GuardarConfiguracion;
protected
FController : IInfVentasAlbArticuloController;
FModificado : Boolean;
procedure OnViewControlChanged(Sender: TObject);
procedure SetInforme(const Value: IBizInforme); override;
procedure RellenarCabeceraInforme; override;
function GetController : IInfVentasAlbArticuloController;
procedure SetController (const Value : IInfVentasAlbArticuloController);
procedure GuardarInterno; override;
public
property Controller: IInfVentasAlbArticuloController read GetController write SetController;
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
end;
implementation
uses
uROClasses, //cxControls, cxGridCustomView, //cxGridCustomTableView,
//cxGridTableView,
uCustomEditor, uDataModuleUsuarios, uSistemaFunc;
{$R *.dfm}
{ TfEditorInfVentasAlbArticulo }
procedure TfEditorInfVentasAlbArticulo.SetController(const Value: IInfVentasAlbArticuloController);
begin
FController := Value;
if Assigned(FController) then
frViewInfVentasAlbArticulo1.Controller := (FController as IInfVentasAlbArticuloController);
end;
procedure TfEditorInfVentasAlbArticulo.SetInforme(const Value: IBizInforme);
begin
inherited;
// RefrescarTituloEditor;
if Assigned(FInforme) then
begin
frViewInfVentasAlbArticulo1.OnViewChanged := OnViewControlChanged;
// with (FInforme as IBizInforme) do
// begin
// Items.DataTable.Active := False; // No se abre la tabla hasta que no se pulse en 'Refrescar'
// dsVentasTerminadas.DataTable := Items.DataTable;
// frViewInfVentasAlbArticulo1.frViewInfVentasAlbArticuloGrid1.FocusedView.DataController.DataSource := dsVentasTerminadas;
// end;
end;
end;
procedure TfEditorInfVentasAlbArticulo.actRefrescarExecute(Sender: TObject);
begin
inherited;
frViewInfVentasAlbArticulo1.Refresh;
while (frViewInfVentasAlbArticulo1.frViewInfVentasAlbArticuloGrid1.FocusedView.Controller.FocusedRecord is TcxGridGroupRow) do
begin
frViewInfVentasAlbArticulo1.frViewInfVentasAlbArticuloGrid1.FocusedView.Controller.FocusedRecord.Expand(True);
if (frViewInfVentasAlbArticulo1.frViewInfVentasAlbArticuloGrid1.FocusedView.Controller.FocusedRecordIndex <
frViewInfVentasAlbArticulo1.frViewInfVentasAlbArticuloGrid1.FocusedView.DataController.RowCount - 1) then
frViewInfVentasAlbArticulo1.frViewInfVentasAlbArticuloGrid1.FocusedView.Controller.GoToNext(False, True)
else
Exit;
end;
end;
procedure TfEditorInfVentasAlbArticulo.actExpandirExecute(Sender: TObject);
begin
inherited;
frViewInfVentasAlbArticulo1.frViewInfVentasAlbArticuloGrid1.ExpandirTodo;
end;
procedure TfEditorInfVentasAlbArticulo.actContraerExecute(Sender: TObject);
begin
inherited;
frViewInfVentasAlbArticulo1.frViewInfVentasAlbArticuloGrid1.ContraerTodo;
end;
procedure TfEditorInfVentasAlbArticulo.actAnchoAutoExecute(Sender: TObject);
begin
inherited;
frViewInfVentasAlbArticulo1.frViewInfVentasAlbArticuloGrid1.AjustarAncho;
end;
procedure TfEditorInfVentasAlbArticulo.OnViewControlChanged(
Sender: TObject);
begin
// if FInforme.EsModificable then
FModificado := True;
end;
procedure TfEditorInfVentasAlbArticulo.CustomEditorCreate(Sender: TObject);
begin
inherited;
FModificado := False;
end;
procedure TfEditorInfVentasAlbArticulo.CustomEditorGetModified(
Sender: TObject; var Modified: Boolean);
begin
inherited;
Modified := FModificado;
end;
destructor TfEditorInfVentasAlbArticulo.Destroy;
begin
FInformesController := Nil;
FViewInforme := Nil;
inherited;
end;
function TfEditorInfVentasAlbArticulo.GetController: IInfVentasAlbArticuloController;
begin
Result := FController;
end;
procedure TfEditorInfVentasAlbArticulo.GuardarConfiguracion;
var
Aux : IROStrings;
Fichero: TextFile;
NombreFichero: String;
begin
NombreFichero := DarFicheroTemporal;
frViewInfVentasAlbArticulo1.frViewInfVentasAlbArticuloGrid1.cxGridView.StoreToIniFile(NombreFichero, true, [gsoUseFilter,gsoUseSummary]);
with TStringList.Create do
try
LoadFromFile(NombreFichero);
Aux := NewROStrings();
Aux.Add(Text);
{ if not (FInforme.DataTable.State in dsEditModes) then
FInforme.Edit;
FInforme.VISTA := Aux;
}
finally
Free;
end;
end;
procedure TfEditorInfVentasAlbArticulo.GuardarInterno;
begin
inherited;
ShowHourglassCursor;
try
if FModificado then
GuardarConfiguracion;
FInformesController.Guardar(FInforme);
FModificado := False;
finally
HideHourglassCursor;
end;
Modified := False;
end;
procedure TfEditorInfVentasAlbArticulo.RestaurarConfiguracion;
var
Fichero: TextFile;
NombreFichero: String;
begin
try
//Creamos un fichero temporal para guardar la configuración del informe que viene dada
//por su campo vista, para luego restaurarla en el grid a partir de dicho fichero porque el Stream falla
NombreFichero := DarFicheroTemporal;
AssignFile(Fichero, NombreFichero);
Rewrite(Fichero);
Writeln(Fichero, FInforme.VISTA.Text);
CloseFile(Fichero);
//Restauramos la configuración
frViewInfVentasAlbArticulo1.frViewInfVentasAlbArticuloGrid1.cxGridView.RestoreFromIniFile(NombreFichero,True,false,[gsoUseFilter,gsoUseSummary]);
finally
//Eliminamos el fichero temporal
DeleteFile(NombreFichero);
// FreeAndNil(Fichero)
end;
end;
procedure TfEditorInfVentasAlbArticulo.FormShow(Sender: TObject);
begin
inherited;
if FInforme.DataTable.State <> dsInsert then // No restaurar si estamos insertando
RestaurarConfiguracion;
frViewInfVentasAlbArticulo1.frViewColumnas1.Refresh;
frViewInfVentasAlbArticulo1.frViewAgrupaciones1.Refresh;
if FInforme.DataTable.State = dsInsert then // Si es nuevo obligamos a meter nombre
actPropiedades.Execute;
end;
procedure TfEditorInfVentasAlbArticulo.actPrevisualizarExecute(
Sender: TObject);
begin
inherited;
frViewInfVentasAlbArticulo1.frViewInfVentasAlbArticuloGrid1.Preview;
end;
procedure TfEditorInfVentasAlbArticulo.actImprimirExecute(Sender: TObject);
begin
inherited;
frViewInfVentasAlbArticulo1.frViewInfVentasAlbArticuloGrid1.Print;
end;
procedure TfEditorInfVentasAlbArticulo.actConfPaginaExecute(
Sender: TObject);
begin
inherited;
frViewInfVentasAlbArticulo1.frViewInfVentasAlbArticuloGrid1.PrintSetup;
end;
constructor TfEditorInfVentasAlbArticulo.Create(AOwner: TComponent);
begin
inherited;
FInformesController := TInformesController.Create;
FViewInforme := frViewInfVentasAlbArticulo1;
end;
procedure TfEditorInfVentasAlbArticulo.RellenarCabeceraInforme;
begin
inherited;
with frViewInfVentasAlbArticulo1.frViewInfVentasAlbArticuloGrid1.dxPrintStyleManager1Style1.PrinterPage.PageHeader do
begin
LeftTitle.Clear;
// LeftTitle.Add(FInforme.NOMBRE);
LeftTitle.Add(FInforme.DESCRIPCION);
RightTitle.Clear;
RightTitle.Add(DateToStr(frViewInfVentasAlbArticulo1.frViewPeriodoFechasInforme1.edtFechaIni.Date) +
' - ' + DateToStr(frViewInfVentasAlbArticulo1.frViewPeriodoFechasInforme1.edtFechaFin.Date));
RightTitle.Add(frViewInfVentasAlbArticulo1.frViewInfVentasAlbArticuloGrid1.FocusedView.DataController.Filter.FilterText);
end;
end;
end.

View File

@ -8,16 +8,18 @@ procedure UnregisterViews;
implementation
uses
uEditorRegistryUtils, uEditorInfVentasArticulo;
uEditorRegistryUtils, uEditorInfVentasArticulo, uEditorInfVentasAlbArticulo;
procedure RegisterViews;
begin
EditorRegistry.RegisterClass(TfEditorInfVentasArticulo, 'EditorInfVentasArticulo');
EditorRegistry.RegisterClass(TfEditorInfVentasAlbArticulo, 'EditorInfVentasAlbArticulo');
end;
procedure UnregisterViews;
begin
EditorRegistry.UnRegisterClass(TfEditorInfVentasArticulo);
EditorRegistry.UnRegisterClass(TfEditorInfVentasAlbArticulo);
end;
end.

View File

@ -0,0 +1,202 @@
inherited frViewInfVentasAlbArticulo: TfrViewInfVentasAlbArticulo
Height = 509
ExplicitHeight = 509
inherited TBXMultiDock1: TTBXMultiDock
Top = 110
Height = 399
ExplicitTop = 110
ExplicitHeight = 399
inherited pnlParametros: TTBXDockablePanel
ExplicitHeight = 184
inherited pcParametros: TPageControl
Height = 95
ExplicitHeight = 95
inherited TabSheet5: TTabSheet
ExplicitLeft = 4
ExplicitTop = 6
ExplicitWidth = 210
ExplicitHeight = 85
end
inherited tsColumnas: TTabSheet
ExplicitHeight = 85
inherited frViewColumnas1: TfrViewColumnas
Height = 85
ExplicitHeight = 85
inherited lbColumnas: TcxCheckListBox
Height = 56
ExplicitHeight = 56
end
end
end
inherited tsAgrupacion: TTabSheet
ExplicitHeight = 85
inherited frViewAgrupaciones1: TfrViewAgrupaciones
Height = 85
ExplicitHeight = 85
end
end
end
end
inherited pnlTareas: TTBXDockablePanel
Top = 184
DockPos = 184
ExplicitTop = 184
ExplicitHeight = 199
inherited TBXPageScroller1: TTBXPageScroller
Height = 177
ExplicitHeight = 177
inherited pcTareas: TPageControl
Height = 129
ExplicitHeight = 129
inherited tsSumarios: TTabSheet
ExplicitHeight = 119
inherited frViewSumarios1: TfrViewSumarios
Height = 119
ExplicitHeight = 119
inherited vgSumarios: TcxVerticalGrid
Height = 90
ExplicitHeight = 90
end
end
end
inherited tsFiltros: TTabSheet
ExplicitHeight = 119
inherited frViewFiltros1: TfrViewFiltros
Height = 119
ExplicitHeight = 119
inherited cxFilterControl1: TcxFilterControl
Height = 60
ExplicitHeight = 60
end
inherited TBXAlignmentPanel3: TTBXAlignmentPanel
Top = 89
ExplicitTop = 89
end
end
end
end
end
end
end
inline frViewInfVentasAlbArticuloGrid1: TfrViewInfVentasAlbArticuloGrid [1]
Left = 222
Top = 110
Width = 477
Height = 399
Align = alClient
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 1
ReadOnly = False
ExplicitLeft = 222
ExplicitTop = 110
ExplicitWidth = 477
ExplicitHeight = 399
inherited cxGrid: TcxGrid
Width = 477
Height = 399
ExplicitWidth = 477
ExplicitHeight = 399
inherited cxGridView: TcxGridDBTableView
inherited cxGridViewCANTIDAD: TcxGridDBColumn
OnHeaderClick = frViewInfVentasAlbArticuloGrid1cxGridViewCANTIDADHeaderClick
end
inherited cxGridViewIMPORTE_TOTAL_VENTA: TcxGridDBColumn
OnHeaderClick = frViewInfVentasAlbArticuloGrid1cxGridViewIMPORTE_TOTAL_VENTAHeaderClick
end
end
end
inherited dxPrintStyleManager1: TdxPrintStyleManager
inherited dxPrintStyleManager1Style1: TdxPSPrintStyle
BuiltInStyle = True
end
end
inherited dxComponentPrinter: TdxComponentPrinter
inherited dxPrinterLinkcxGrid: TdxGridReportLink
BuiltInReportLink = True
end
end
end
inherited TBXMultiDock2: TTBXMultiDock [2]
Height = 110
ExplicitHeight = 110
inherited pnlIntervaloFechas: TTBXDockablePanel
DockedHeight = 106
ShowCaption = False
ShowCaptionWhenDocked = False
ExplicitHeight = 110
inherited TBXAlignmentPanel3: TTBXAlignmentPanel
Top = 76
Width = 679
ExplicitTop = 76
ExplicitWidth = 679
end
inline frViewPeriodoFechasInforme1: TfrViewPeriodoFechasInforme
Left = 0
Top = 0
Width = 679
Height = 76
Align = alClient
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
TabOrder = 1
ReadOnly = False
ExplicitWidth = 679
ExplicitHeight = 76
inherited TBXDockablePanel1: TTBXDockablePanel
ExplicitWidth = 679
ExplicitHeight = 76
inherited dxLayoutControl1: TdxLayoutControl
Width = 679
Height = 76
ExplicitWidth = 679
ExplicitHeight = 76
inherited cbPeriodo: TcxComboBox
Left = 54
ExplicitLeft = 54
end
inherited edtFechaIni: TcxDateEdit
Left = 54
ExplicitLeft = 54
end
inherited edtFechaFin: TcxDateEdit
Left = 266
ExplicitLeft = 266
end
end
end
end
end
end
inherited dsDataSource: TDADataSource [3]
end
inherited SmallImages: TPngImageList [4]
end
inherited LargeImages: TPngImageList [5]
end
inherited EditorActionList: TActionList
Left = 248
Top = 72
inherited actRefrescar: TAction
OnExecute = actRefrescarExecute
end
object actPeriodoFechas: TAction
Category = 'Tareas'
Caption = 'Periodo de fechas'
ImageIndex = 4
OnExecute = actPeriodoFechasExecute
end
end
object dsVentasTerminadas: TDADataSource
Left = 288
Top = 160
end
end

View File

@ -0,0 +1,221 @@
unit uViewInfVentasAlbArticulo;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewInformeBase, ActnList, ImgList, PngImageList, uViewGrid,
uViewInformeBaseGrid, uViewSumarios, TBXDkPanels, StdCtrls,
uViewAgrupaciones, uCustomView, uViewBase, uViewColumnas, ComCtrls,
TB2Dock, uViewInformeBaseParametros, uBizInformes, cxStyles,
cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB,
cxDBData, cxGridLevel, cxClasses, cxControls, cxGridCustomView,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid,
cxTextEdit, uViewFiltros, uBizInfVentasArticulo, uInfVentasAlbArticuloController,
uViewPeriodoFechasInforme, uViewInfVentasAlbArticuloGrid, uDADataTable, uViewFiltroBase,
uDAInterfaces;
type
IViewInfVentasAlbArticulo = interface(IViewInformeBase)
['{B8B9105B-E833-4E7D-BA36-EB9A7EBDCE69}']
function GetDatos : IBizInfVentasAlbArticulo;
procedure SetDatos (const Value : IBizInfVentasAlbArticulo);
property Datos : IBizInfVentasAlbArticulo read GetDatos write SetDatos;
function GetController : IInfVentasAlbArticuloController;
procedure SetController (const Value : IInfVentasAlbArticuloController);
property Controller: IInfVentasAlbArticuloController read GetController write SetController;
end;
TfrViewInfVentasAlbArticulo = class(TfrViewInformeBase, IViewInfVentasAlbArticulo)
frViewPeriodoFechasInforme1: TfrViewPeriodoFechasInforme;
actPeriodoFechas: TAction;
frViewInfVentasAlbArticuloGrid1: TfrViewInfVentasAlbArticuloGrid;
dsVentasTerminadas: TDADataSource;
procedure actRefrescarExecute(Sender: TObject);
procedure actPeriodoFechasExecute(Sender: TObject);
procedure frViewInfVentasAlbArticuloGrid1cxGridViewIMPORTE_TOTAL_VENTAHeaderClick(Sender: TObject);
procedure frViewInfVentasAlbArticuloGrid1cxGridViewCANTIDADHeaderClick(Sender: TObject);
protected
FDatos : IBizInfVentasAlbArticulo;
FController : IInfVentasAlbArticuloController;
FModificado : Boolean;
procedure OnViewInformeBaseGridChanged(Sender : TObject);
procedure OnFilterChanged(Sender : TObject);
procedure ActivarTarea(const ATarea: Integer); override;
function GetFocusedView: TcxGridDBTableView; override;
function GetDatos : IBizInfVentasAlbArticulo;
procedure SetDatos (const Value : IBizInfVentasAlbArticulo);
function GetController : IInfVentasAlbArticuloController;
procedure SetController (const Value : IInfVentasAlbArticuloController);
public
property Controller: IInfVentasAlbArticuloController read GetController write SetController;
property Datos : IBizInfVentasAlbArticulo read GetDatos write SetDatos;
constructor Create(AOwner: TComponent); override;
procedure Refresh; override;
end;
implementation
{$R *.dfm}
{ TfrViewInfVentasAlbArticulo }
uses schInfVentasArticuloClient_Intf, StrUtils;
const
PERIODO = 0;
constructor TfrViewInfVentasAlbArticulo.Create(AOwner: TComponent);
begin
inherited;
frViewInfVentasAlbArticuloGrid1.OnViewChanged := OnViewInformeBaseGridChanged;
frViewInfVentasAlbArticuloGrid1.OnFilterChanged := OnFilterChanged;
frViewColumnas1.ViewInformeBaseGrid := frViewInfVentasAlbArticuloGrid1;
frViewAgrupaciones1.ViewInformeBaseGrid := frViewInfVentasAlbArticuloGrid1;
frViewSumarios1.ViewInformeBaseGrid := frViewInfVentasAlbArticuloGrid1;
frViewFiltros1.ViewInformeBaseGrid := frViewInfVentasAlbArticuloGrid1;
pcParametros.ActivePage := TabSheet5;
end;
procedure TfrViewInfVentasAlbArticulo.frViewInfVentasAlbArticuloGrid1cxGridViewCANTIDADHeaderClick(Sender: TObject);
begin
inherited;
frViewInfVentasAlbArticuloGrid1.cxGridView.DataController.Groups.DataController.BeginUpdate;
frViewInfVentasAlbArticuloGrid1.cxGridView.GetColumnByFieldName(fld_InfVentasAlbArticuloCANTIDAD).SortIndex := 1;
frViewInfVentasAlbArticuloGrid1.cxGridView.GetColumnByFieldName(fld_InfVentasAlbArticuloCANTIDAD).Summary.SortByGroupFooterSummary := True;
frViewInfVentasAlbArticuloGrid1.cxGridView.DataController.Groups.DataController.EndUpdate;
end;
procedure TfrViewInfVentasAlbArticulo.frViewInfVentasAlbArticuloGrid1cxGridViewIMPORTE_TOTAL_VENTAHeaderClick(Sender: TObject);
begin
inherited;
frViewInfVentasAlbArticuloGrid1.cxGridView.DataController.Groups.DataController.BeginUpdate;
frViewInfVentasAlbArticuloGrid1.cxGridView.GetColumnByFieldName(fld_InfVentasAlbArticuloIMPORTE_TOTAL_VENTA).SortOrder := soAscending;
frViewInfVentasAlbArticuloGrid1.cxGridView.GetColumnByFieldName(fld_InfVentasAlbArticuloIMPORTE_TOTAL_VENTA).Summary.SortByGroupFooterSummary := True;
frViewInfVentasAlbArticuloGrid1.cxGridView.DataController.Groups.DataController.EndUpdate;
end;
function TfrViewInfVentasAlbArticulo.GetController: IInfVentasAlbArticuloController;
begin
Result := FController;
end;
function TfrViewInfVentasAlbArticulo.GetDatos: IBizInfVentasAlbArticulo;
begin
Result := FDatos;
end;
function TfrViewInfVentasAlbArticulo.GetFocusedView: TcxGridDBTableView;
begin
Result := frViewInfVentasAlbArticuloGrid1.cxGridView;
end;
procedure TfrViewInfVentasAlbArticulo.Refresh;
var
AColumns : TStringList;
AColumnsGroup : TStringList;
i: Integer;
Condicion: TDAWhereExpression;
AWhere : String;
begin
inherited;
ShowHourglassCursor;
actRefrescar.Enabled := False;
AWhere := ' ( ' + fld_InfVentasAlbArticuloFECHA_ALBARAN + ' between ''' + ReplaceStr(DateToStr(frViewPeriodoFechasInforme1.FechaInicial),'/','.') + ''' and ''' + ReplaceStr(DateToStr(frViewPeriodoFechasInforme1.FechaFinal),'/','.') + ''') ';
frViewInfVentasAlbArticuloGrid1.OnViewChanged := nil;
frViewInfVentasAlbArticuloGrid1.OnFilterChanged := nil;
try
// Calcular las columnas a pedir al servidor
AColumns := frViewColumnas1.GetCheckedColumns;
AColumns.sorted := true;
AColumns.Duplicates := dupIgnore;
//Añadimos el nombre de los campos a los que referencia los captions de agrupacion
AColumnsGroup := frViewAgrupaciones1.GetAgrupaciones;
for i:= 0 to AColumnsGroup.Count - 1 do
AColumns.Add((frViewInfVentasAlbArticuloGrid1 as IViewInformeBaseGrid).GetColumnByCaption(AColumnsGroup.Strings[i]).DataBinding.FieldName);
FDatos := FController.BuscarTodos(AColumns.CommaText, Awhere);
dsVentasTerminadas.DataTable := FDatos.Datatable;
frViewInfVentasAlbArticuloGrid1.FocusedView.DataController.DataSource := dsVentasTerminadas;
with Datos.DataTable do
begin
DisableControls;
try
Active := False;
Active := True;
frViewColumnas1.Execute;
frViewAgrupaciones1.Execute;
frViewSumarios1.Refresh;
frViewFiltros1.Refresh;
pnlTareas.Visible := True;
if Assigned(FOnViewChanged) then
FOnViewChanged(Self);
finally
EnableControls;
frViewInfVentasAlbArticuloGrid1.Refresh;
frViewInfVentasAlbArticuloGrid1.ExpandirTodo;
frViewInfVentasAlbArticuloGrid1.GotoFirst;
end;
end;
finally
FreeAndNil(AColumns);
actRefrescar.Enabled := True;
HideHourglassCursor;
end;
end;
procedure TfrViewInfVentasAlbArticulo.SetController(const Value: IInfVentasAlbArticuloController);
begin
FController := Value;
end;
procedure TfrViewInfVentasAlbArticulo.SetDatos(const Value: IBizInfVentasAlbArticulo);
begin
FDatos := Value;
end;
procedure TfrViewInfVentasAlbArticulo.actRefrescarExecute(Sender: TObject);
begin
inherited;
Refresh;
end;
procedure TfrViewInfVentasAlbArticulo.OnViewInformeBaseGridChanged(
Sender: TObject);
begin
if Assigned(Self.OnViewChanged) then
Self.OnViewChanged(Self);
end;
procedure TfrViewInfVentasAlbArticulo.OnFilterChanged(Sender: TObject);
begin
frViewFiltros1.Refresh;
end;
procedure TfrViewInfVentasAlbArticulo.actPeriodoFechasExecute(
Sender: TObject);
begin
inherited;
ActivarTarea(PERIODO);
end;
procedure TfrViewInfVentasAlbArticulo.ActivarTarea(const ATarea: Integer);
begin
inherited;
case ATarea of
PERIODO : pcParametros.ActivePage := TabSheet5;
end;
end;
end.

View File

@ -0,0 +1,255 @@
inherited frViewInfVentasAlbArticuloGrid: TfrViewInfVentasAlbArticuloGrid
Width = 583
Height = 378
ExplicitWidth = 583
ExplicitHeight = 378
object cxGrid: TcxGrid [0]
Left = 0
Top = 0
Width = 583
Height = 378
Align = alClient
TabOrder = 0
LookAndFeel.Kind = lfStandard
LookAndFeel.NativeStyle = True
object cxGridView: TcxGridDBTableView
NavigatorButtons.ConfirmDelete = False
FilterBox.CustomizeDialog = False
FilterBox.Visible = fvNever
DataController.Filter.Options = [fcoCaseInsensitive]
DataController.Filter.OnChanged = cxGridViewDataControllerFilterChanged
DataController.KeyFieldNames = 'RecID'
DataController.Options = [dcoAnsiSort, dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoSortByDisplayText]
DataController.Summary.DefaultGroupSummaryItems = <>
DataController.Summary.FooterSummaryItems = <>
DataController.Summary.SummaryGroups = <>
DataController.Summary.OnAfterSummary = cxGridViewDataControllerSummaryAfterSummary
DataController.OnGroupingChanged = cxGridViewDataControllerGroupingChanged
DataController.OnSortingChanged = cxGridViewDataControllerSortingChanged
OptionsBehavior.CellHints = True
OptionsCustomize.ColumnFiltering = False
OptionsCustomize.ColumnGrouping = False
OptionsCustomize.ColumnsQuickCustomization = True
OptionsCustomize.DataRowSizing = True
OptionsCustomize.GroupRowSizing = True
OptionsData.Deleting = False
OptionsData.DeletingConfirmation = False
OptionsData.Editing = False
OptionsData.Inserting = False
OptionsSelection.CellSelect = False
OptionsSelection.UnselectFocusedRecordOnExit = False
OptionsView.CellEndEllipsis = True
OptionsView.CellAutoHeight = True
OptionsView.ColumnAutoWidth = True
OptionsView.Footer = True
OptionsView.FooterAutoHeight = True
OptionsView.GridLineColor = cl3DLight
OptionsView.GroupByBox = False
OptionsView.GroupFooters = gfAlwaysVisible
OptionsView.HeaderEndEllipsis = True
Styles.FilterBox = cxStyleFilterBox
Styles.OnGetContentStyle = cxGridViewStylesGetContentStyle
OnColumnPosChanged = cxGridViewColumnPosChanged
OnColumnSizeChanged = cxGridViewColumnSizeChanged
object cxGridViewRecID: TcxGridDBColumn
DataBinding.FieldName = 'RecID'
Visible = False
end
object cxGridViewID_ALBARAN: TcxGridDBColumn
Caption = 'Id_albar'#225'n'
DataBinding.FieldName = 'ID_ALBARAN'
end
object cxGridViewID_EMPRESA: TcxGridDBColumn
Caption = 'Id_empresa'
DataBinding.FieldName = 'ID_EMPRESA'
end
object cxGridViewREFERENCIA_ALBARAN: TcxGridDBColumn
Caption = 'Ref. albar'#225'n'
DataBinding.FieldName = 'REFERENCIA_ALBARAN'
end
object cxGridViewFECHA_ALBARAN: TcxGridDBColumn
Caption = 'Fecha albar'#225'n'
DataBinding.FieldName = 'FECHA_ALBARAN'
end
object cxGridViewIMPORTE_TOTAL_ALBARAN: TcxGridDBColumn
Caption = 'Importe albar'#225'n'
DataBinding.FieldName = 'IMPORTE_TOTAL_ALBARAN'
end
object cxGridViewID_ARTICULO: TcxGridDBColumn
Caption = 'Id_articulo'
DataBinding.FieldName = 'ID_ARTICULO'
end
object cxGridViewFAMILIA: TcxGridDBColumn
Caption = 'Familia'
DataBinding.FieldName = 'FAMILIA'
end
object cxGridViewREFERENCIA: TcxGridDBColumn
Caption = 'Referencia'
DataBinding.FieldName = 'REFERENCIA'
end
object cxGridViewDESCRIPCION: TcxGridDBColumn
Caption = 'Descripci'#243'n'
DataBinding.FieldName = 'DESCRIPCION'
end
object cxGridViewREFERENCIA_PROV: TcxGridDBColumn
Caption = 'Ref. proveedor'
DataBinding.FieldName = 'REFERENCIA_PROV'
end
object cxGridViewCOMISIONABLE: TcxGridDBColumn
Caption = 'Comisionable'
DataBinding.FieldName = 'COMISIONABLE'
end
object cxGridViewINVENTARIABLE: TcxGridDBColumn
Caption = 'Inventariable'
DataBinding.FieldName = 'INVENTARIABLE'
end
object cxGridViewIMPORTE_UNIDAD_COSTE: TcxGridDBColumn
Caption = 'Precio uni. compra'
DataBinding.FieldName = 'IMPORTE_UNIDAD_COSTE'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.Alignment.Horz = taRightJustify
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewDESCUENTO_PROVEEDOR_COSTE: TcxGridDBColumn
Caption = 'Dto proveedor'
DataBinding.FieldName = 'DESCUENTO_PROVEEDOR_COSTE'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.Alignment.Horz = taRightJustify
Properties.DisplayFormat = ',0.00 %;-,0.00 %'
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewIMPORTE_NETO_COSTE: TcxGridDBColumn
Caption = 'Precio neto compra'
DataBinding.FieldName = 'IMPORTE_NETO_COSTE'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.Alignment.Horz = taRightJustify
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewIMPORTE_PORTE_COSTE: TcxGridDBColumn
Caption = 'Precio porte compra'
DataBinding.FieldName = 'IMPORTE_PORTE_COSTE'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.Alignment.Horz = taRightJustify
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewCANTIDAD: TcxGridDBColumn
Caption = 'Cantidad'
DataBinding.FieldName = 'CANTIDAD'
end
object cxGridViewIMPORTE_UNIDAD_VENTA: TcxGridDBColumn
Caption = 'Precio uni. venta'
DataBinding.FieldName = 'IMPORTE_UNIDAD_VENTA'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.Alignment.Horz = taRightJustify
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewDESCUENTO_CLIENTE_VENTA: TcxGridDBColumn
Caption = 'Dto. cliente'
DataBinding.FieldName = 'DESCUENTO_CLIENTE_VENTA'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.Alignment.Horz = taRightJustify
Properties.DisplayFormat = ',0.00 %;-,0.00 %'
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewIMPORTE_NETO_VENTA: TcxGridDBColumn
Caption = 'Precio neto venta'
DataBinding.FieldName = 'IMPORTE_NETO_VENTA'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.Alignment.Horz = taRightJustify
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewIMPORTE_TOTAL_VENTA: TcxGridDBColumn
Caption = 'Importe total venta'
DataBinding.FieldName = 'IMPORTE_TOTAL_VENTA'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.Alignment.Horz = taRightJustify
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewNIF_CIF_PROVEEDOR: TcxGridDBColumn
Caption = 'NIF/CIF prov.'
DataBinding.FieldName = 'NIF_CIF_PROVEEDOR'
end
object cxGridViewNOMBRE_PROVEEDOR: TcxGridDBColumn
Caption = 'Proveedor'
DataBinding.FieldName = 'NOMBRE_PROVEEDOR'
end
object cxGridViewNIF_CIF_CLIENTE: TcxGridDBColumn
Caption = 'NIF/CIF cli.'
DataBinding.FieldName = 'NIF_CIF_CLIENTE'
end
object cxGridViewNOMBRE_CLIENTE: TcxGridDBColumn
Caption = 'Cliente'
DataBinding.FieldName = 'NOMBRE_CLIENTE'
end
object cxGridViewNOMBRE_COMERCIAL_CLIENTE: TcxGridDBColumn
Caption = 'Nombre comercial cli.'
DataBinding.FieldName = 'NOMBRE_COMERCIAL_CLIENTE'
end
object cxGridViewNIF_CIF_AGENTE: TcxGridDBColumn
Caption = 'NIF/CIF agente'
DataBinding.FieldName = 'NIF_CIF_AGENTE'
end
object cxGridViewNOMBRE_AGENTE: TcxGridDBColumn
Caption = 'Agente'
DataBinding.FieldName = 'NOMBRE_AGENTE'
end
object cxGridViewCOMISION_AGENTE: TcxGridDBColumn
Caption = 'Comisi'#243'n agente'
DataBinding.FieldName = 'COMISION_AGENTE'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.Alignment.Horz = taRightJustify
Properties.DisplayFormat = ',0.00 %;-,0.00 %'
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
object cxGridViewIMPORTE_COMISION_AGENTE: TcxGridDBColumn
Caption = 'Importe comisi'#243'n'
DataBinding.FieldName = 'IMPORTE_COMISION_AGENTE'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.Alignment.Horz = taRightJustify
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
end
end
object cxGridLevel: TcxGridLevel
GridView = cxGridView
end
end
inherited dxPrintStyleManager1: TdxPrintStyleManager
inherited dxPrintStyleManager1Style1: TdxPSPrintStyle
BuiltInStyle = True
end
end
inherited dxComponentPrinter: TdxComponentPrinter
inherited dxPrinterLinkcxGrid: TdxGridReportLink
Component = cxGrid
BuiltInReportLink = True
end
end
object cxStyleRepository1: TcxStyleRepository
Left = 16
Top = 48
PixelsPerInch = 96
object cxStyleRed: TcxStyle
AssignedValues = [svTextColor]
TextColor = clRed
end
object cxStyleBlue: TcxStyle
AssignedValues = [svTextColor]
TextColor = clBlue
end
object cxStyleFilterBox: TcxStyle
AssignedValues = [svColor, svTextColor]
Color = clInfoBk
TextColor = clWindowText
end
end
end

View File

@ -0,0 +1,226 @@
unit uViewInfVentasAlbArticuloGrid;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewInformeBaseGrid, DB, uDADataTable, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData,
cxTextEdit, cxGridLevel, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid,
cxCurrencyEdit, cxCalendar, dxPSGlbl, dxPSUtl, dxPrnPg, dxBkgnd, dxWrap,
dxPrnDev, dxPSEngn, dxPSCompsProvider, dxPSFillPatterns,
dxPSEdgePatterns, dxPSCore, dxPScxCommon, dxPScxGrid6Lnk, dxPgsDlg,
cxDropDownEdit, StdCtrls, cxSpinEdit;
type
IViewInfVentasAlbArticuloGrid = interface(IViewInformeBaseGrid)
['{17FAC839-1CCF-4534-B4E1-32374D0CA77E}']
end;
TfrViewInfVentasAlbArticuloGrid = class(TfrViewInformeBaseGrid, IViewInfVentasAlbArticuloGrid)
cxGrid: TcxGrid;
cxGridView: TcxGridDBTableView;
cxGridLevel: TcxGridLevel;
cxStyleRepository1: TcxStyleRepository;
cxStyleRed: TcxStyle;
cxStyleBlue: TcxStyle;
cxStyleFilterBox: TcxStyle;
cxGridViewRecID: TcxGridDBColumn;
cxGridViewID_ALBARAN: TcxGridDBColumn;
cxGridViewID_EMPRESA: TcxGridDBColumn;
cxGridViewREFERENCIA_ALBARAN: TcxGridDBColumn;
cxGridViewFECHA_ALBARAN: TcxGridDBColumn;
cxGridViewIMPORTE_TOTAL_ALBARAN: TcxGridDBColumn;
cxGridViewID_ARTICULO: TcxGridDBColumn;
cxGridViewFAMILIA: TcxGridDBColumn;
cxGridViewREFERENCIA: TcxGridDBColumn;
cxGridViewREFERENCIA_PROV: TcxGridDBColumn;
cxGridViewDESCRIPCION: TcxGridDBColumn;
cxGridViewCOMISIONABLE: TcxGridDBColumn;
cxGridViewINVENTARIABLE: TcxGridDBColumn;
cxGridViewIMPORTE_UNIDAD_COSTE: TcxGridDBColumn;
cxGridViewDESCUENTO_PROVEEDOR_COSTE: TcxGridDBColumn;
cxGridViewIMPORTE_NETO_COSTE: TcxGridDBColumn;
cxGridViewIMPORTE_PORTE_COSTE: TcxGridDBColumn;
cxGridViewCANTIDAD: TcxGridDBColumn;
cxGridViewIMPORTE_UNIDAD_VENTA: TcxGridDBColumn;
cxGridViewDESCUENTO_CLIENTE_VENTA: TcxGridDBColumn;
cxGridViewIMPORTE_TOTAL_VENTA: TcxGridDBColumn;
cxGridViewNIF_CIF_PROVEEDOR: TcxGridDBColumn;
cxGridViewNOMBRE_PROVEEDOR: TcxGridDBColumn;
cxGridViewNIF_CIF_CLIENTE: TcxGridDBColumn;
cxGridViewNOMBRE_CLIENTE: TcxGridDBColumn;
cxGridViewNOMBRE_COMERCIAL_CLIENTE: TcxGridDBColumn;
cxGridViewNIF_CIF_AGENTE: TcxGridDBColumn;
cxGridViewNOMBRE_AGENTE: TcxGridDBColumn;
cxGridViewCOMISION_AGENTE: TcxGridDBColumn;
cxGridViewIMPORTE_COMISION_AGENTE: TcxGridDBColumn;
cxGridViewIMPORTE_NETO_VENTA: TcxGridDBColumn;
procedure cxGridViewStylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
procedure cxGridViewColumnPosChanged(Sender: TcxGridTableView; AColumn: TcxGridColumn);
procedure cxGridViewColumnSizeChanged(Sender: TcxGridTableView; AColumn: TcxGridColumn);
procedure cxGridViewDataControllerGroupingChanged(Sender: TObject);
procedure cxGridViewDataControllerSortingChanged(Sender: TObject);
procedure cxGridViewDataControllerSummaryAfterSummary(ASender: TcxDataSummary);
procedure cxGridViewDataControllerFilterChanged(Sender: TObject);
protected
procedure ActivarEventos; override;
procedure DesactivarEventos; override;
function GetFocusedView : TcxGridDBTableView; override;
public
procedure Refresh; override;
constructor Create(AOwner: TComponent); override;
end;
implementation
uses
cxVariants, uDateUtils;
{$R *.dfm}
{ TfrInfVentasAlbArticuloGrid }
function TfrViewInfVentasAlbArticuloGrid.GetFocusedView: TcxGridDBTableView;
begin
Result := cxGridView;
end;
procedure TfrViewInfVentasAlbArticuloGrid.Refresh;
var
FocusedRow, TopRow, i : Integer;
begin
inherited;
{ Refrescar las filas del grid a partir del dataset y colocar la fila
seleccionada donde estaba }
if FocusedView.DataController.DataSource.DataSet.State = dsBrowse then
begin
TopRow := FocusedView.Controller.TopRowIndex;
FocusedRow := FocusedView.DataController.FocusedRowIndex;
FocusedView.DataController.UpdateItems(False); // <- Refresco
FocusedView.DataController.FocusedRowIndex := FocusedRow;
FocusedView.Controller.TopRowIndex := TopRow;
//Para que el usuario pueda ocultar y desocultar columnas sin afectar al informe
for i := 0 to FocusedView.ColumnCount - 1 do
FocusedView.Columns[i].Hidden := not FocusedView.Columns[i].Visible;
end;
end;
procedure TfrViewInfVentasAlbArticuloGrid.cxGridViewStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
var
AColumn : TcxGridDBColumn;
AFecha : TDateTime;
begin
inherited;
// La fila es la cabecera de un grupo
{ if ARecord.Expandable then
Exit;
AColumn := FocusedView.GetColumnByFieldName('FECHA');
if Assigned(AColumn) and (AColumn.Visible) then
begin
try
AFecha := VarToDateTime(ARecord.Values[AColumn.Index]);
except
on Exception do
ShowMessage(VarToStr(ARecord.Values[AColumn.Index]));
end;
if DaysBetween(Now, AFecha) > 14 then
AStyle := cxStyleRed
else
if DaysBetween(Now, AFecha) > 7 then
AStyle := cxStyleBlue
end; }
end;
procedure TfrViewInfVentasAlbArticuloGrid.cxGridViewColumnPosChanged(
Sender: TcxGridTableView; AColumn: TcxGridColumn);
begin
inherited;
if Assigned(FOnViewChanged) then
FOnViewChanged(Self);
end;
procedure TfrViewInfVentasAlbArticuloGrid.cxGridViewColumnSizeChanged(
Sender: TcxGridTableView; AColumn: TcxGridColumn);
begin
inherited;
if Assigned(FOnViewChanged) then
FOnViewChanged(Self);
end;
procedure TfrViewInfVentasAlbArticuloGrid.cxGridViewDataControllerGroupingChanged(
Sender: TObject);
begin
inherited;
if Assigned(FOnViewChanged) then
FOnViewChanged(Self);
end;
procedure TfrViewInfVentasAlbArticuloGrid.cxGridViewDataControllerSortingChanged(
Sender: TObject);
begin
inherited;
if Assigned(FOnViewChanged) then
FOnViewChanged(Self);
end;
procedure TfrViewInfVentasAlbArticuloGrid.cxGridViewDataControllerSummaryAfterSummary(
ASender: TcxDataSummary);
begin
inherited;
if Assigned(FOnViewChanged) then
FOnViewChanged(Self);
end;
procedure TfrViewInfVentasAlbArticuloGrid.cxGridViewDataControllerFilterChanged(
Sender: TObject);
begin
if Assigned(FOnFilterChanged) then
FOnFilterChanged(Self);
end;
constructor TfrViewInfVentasAlbArticuloGrid.Create(AOwner: TComponent);
begin
inherited;
end;
procedure TfrViewInfVentasAlbArticuloGrid.ActivarEventos;
begin
inherited;
with cxGridView do
begin
DataController.Filter.OnChanged := cxGridViewDataControllerFilterChanged;
DataController.Summary.OnAfterSummary := cxGridViewDataControllerSummaryAfterSummary;
DataController.OnGroupingChanged := cxGridViewDataControllerGroupingChanged;
DataController.OnSortingChanged := cxGridViewDataControllerSortingChanged;
OnColumnPosChanged := cxGridViewColumnPosChanged;
OnColumnSizeChanged := cxGridViewColumnSizeChanged;
end;
end;
procedure TfrViewInfVentasAlbArticuloGrid.DesactivarEventos;
begin
inherited;
with cxGridView do
begin
DataController.Filter.OnChanged := nil;
DataController.Summary.OnAfterSummary := nil;
DataController.OnGroupingChanged := nil;
DataController.OnSortingChanged := nil;
OnColumnPosChanged := nil;
OnColumnSizeChanged := nil;
end;
end;
end.

View File

@ -13,4 +13,4 @@ BEGIN
END
/* C:\Codigo\Source\Modulos\Informes base\Controller\InformesBase_controller.res */
/* c:\temp\dtf2E5.tmp */
/* c:\temp\dtf322.tmp */

View File

@ -14,4 +14,4 @@ END
/* C:\Codigo\Source\Modulos\Informes base\Data\uDataModuleInformes.dfm */
/* C:\Codigo\Source\Modulos\Informes base\Data\Informes_data.res */
/* c:\temp\dtf2E1.tmp */
/* c:\temp\dtf31E.tmp */

View File

@ -13,4 +13,4 @@ BEGIN
END
/* C:\Codigo\Source\Modulos\Informes base\Model\Informes_model.res */
/* c:\temp\dtf2DF.tmp */
/* c:\temp\dtf31C.tmp */

View File

@ -15,4 +15,4 @@ END
/* C:\Codigo\Source\Modulos\Informes base\Views\uViewInformes.dfm */
/* C:\Codigo\Source\Modulos\Informes base\Views\uEditorInformes.dfm */
/* C:\Codigo\Source\Modulos\Informes base\Views\Informes_view.res */
/* c:\temp\dtf2E9.tmp */
/* c:\temp\dtf326.tmp */

View File

@ -12,14 +12,12 @@ inherited fEditorInformes: TfEditorInformes
Top = 27
ExplicitTop = 27
inherited tbxMain: TTBXToolbar
ExplicitWidth = 179
DockPos = 0
ExplicitWidth = 401
inherited TBXItem2: TTBXItem
ImageIndex = 0
Images = pngImageNuevo
end
inherited TBXItem29: TTBXItem
Visible = False
end
inherited TBXItem27: TTBXItem
Visible = False
end
@ -90,8 +88,6 @@ inherited fEditorInformes: TfEditorInformes
Top = 128
inherited actNuevo: TAction
Caption = 'Nuevo informe...'
Enabled = False
Visible = False
end
inherited actModificar: TAction
Caption = 'Abrir informe'

View File

@ -13,4 +13,4 @@ BEGIN
END
/* C:\Codigo\Source\Modulos\Pedidos de cliente\Controller\PedidosCliente_controller.RES */
/* c:\temp\dtf333.tmp */
/* c:\temp\dtf370.tmp */

View File

@ -14,4 +14,4 @@ END
/* C:\Codigo\Source\Modulos\Pedidos de cliente\Data\uDataModulePedidosCliente.dfm */
/* C:\Codigo\Source\Modulos\Pedidos de cliente\Data\PedidosCliente_data.RES */
/* c:\temp\dtf331.tmp */
/* c:\temp\dtf36E.tmp */

View File

@ -13,4 +13,4 @@ BEGIN
END
/* C:\Codigo\Source\Modulos\Pedidos de cliente\Model\PedidosCliente_model.RES */
/* c:\temp\dtf32F.tmp */
/* c:\temp\dtf36C.tmp */

View File

@ -14,4 +14,4 @@ END
/* C:\Codigo\Source\Modulos\Pedidos de cliente\Plugin\uPluginPedidosCliente.dfm */
/* C:\Codigo\Source\Modulos\Pedidos de cliente\Plugin\PedidosCliente_plugin.RES */
/* c:\temp\dtf397.tmp */
/* c:\temp\dtf3D4.tmp */

View File

@ -26,4 +26,4 @@ END
/* C:\Codigo\Source\Modulos\Pedidos de cliente\Views\uEditorElegirArticulosPedidoCliente.dfm */
/* C:\Codigo\Source\Modulos\Pedidos de cliente\Views\uEditorDireccionEntregaPedidoCliente.dfm */
/* C:\Codigo\Source\Modulos\Pedidos de cliente\Views\PedidosCliente_view.RES */
/* c:\temp\dtf395.tmp */
/* c:\temp\dtf3D2.tmp */

View File

@ -14,4 +14,4 @@ END
/* C:\Codigo\Source\Modulos\Tienda web\Data\uDataModuleTiendaWeb.dfm */
/* C:\Codigo\Source\Modulos\Tienda web\Data\TiendaWeb_data.res */
/* c:\temp\dtf349.tmp */
/* c:\temp\dtf386.tmp */

Binary file not shown.

View File

@ -167,7 +167,9 @@ uses
schInventarioClient_Intf in '..\Modulos\Inventario\Model\schInventarioClient_Intf.pas',
schInventarioServer_Intf in '..\Modulos\Inventario\Model\schInventarioServer_Intf.pas',
schContactosClient_Intf in '..\Modulos\Contactos\Model\schContactosClient_Intf.pas',
schContactosServer_Intf in '..\Modulos\Contactos\Model\schContactosServer_Intf.pas';
schContactosServer_Intf in '..\Modulos\Contactos\Model\schContactosServer_Intf.pas',
schInfVentasArticuloClient_Intf in '..\Modulos\Informe ventas por articulo\Model\schInfVentasArticuloClient_Intf.pas',
schInfVentasArticuloServer_Intf in '..\Modulos\Informe ventas por articulo\Model\schInfVentasArticuloServer_Intf.pas';
{$R *.res}
{$R ..\Servicios\RODLFile.res}

View File

@ -35,7 +35,7 @@
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType/>
<BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters><Parameters Name="RunParams">/standalone</Parameters></Parameters><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">4</VersionInfo><VersionInfo Name="MinorVer">1</VersionInfo><VersionInfo Name="Release">7</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">4.1.7.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">4.1.7.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys><VersionInfoKeys Name="CompileDate">martes, 23 de agosto de 2011 17:50</VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters><Parameters Name="RunParams">/standalone</Parameters></Parameters><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">4</VersionInfo><VersionInfo Name="MinorVer">1</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"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">4.1.8.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">4.1.8.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys><VersionInfoKeys Name="CompileDate">lunes, 03 de octubre de 2011 16:13</VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<Excluded_Packages Name="C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\dxPSCoreD11.bpl">ExpressPrinting System by Developer Express Inc.</Excluded_Packages>
</Excluded_Packages><Source><Source Name="MainSource">FactuGES_Server.dpr</Source></Source></Delphi.Personality><ModelSupport>False</ModelSupport></BorlandProject></BorlandProject>
</ProjectExtensions>
@ -205,6 +205,8 @@
<Form>srvInfMargenArticulo</Form>
<DesignClass>TDARemoteService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Informe ventas por articulo\Model\schInfVentasArticuloClient_Intf.pas"/>
<DCCReference Include="..\Modulos\Informe ventas por articulo\Model\schInfVentasArticuloServer_Intf.pas"/>
<DCCReference Include="..\Modulos\Informe ventas por articulo\Servidor\srvInfVentasArticulo_Impl.pas">
<Form>srvInfVentasArticulo</Form>
<DesignClass>TDataAbstractService</DesignClass>

View File

@ -1,7 +1,7 @@
MAINICON ICON "C:\Codigo\Resources\Iconos\Servidor.ico"
1 VERSIONINFO
FILEVERSION 4,1,7,0
PRODUCTVERSION 4,1,7,0
FILEVERSION 4,1,8,0
PRODUCTVERSION 4,1,8,0
FILEFLAGSMASK 0x3FL
FILEFLAGS 0x00L
FILEOS 0x40004L
@ -12,9 +12,9 @@ BEGIN
BEGIN
BLOCK "0C0A04E4"
BEGIN
VALUE "FileVersion", "4.1.7.0\0"
VALUE "ProductVersion", "4.1.7.0\0"
VALUE "CompileDate", "martes, 23 de agosto de 2011 18:22\0"
VALUE "FileVersion", "4.1.8.0\0"
VALUE "ProductVersion", "4.1.8.0\0"
VALUE "CompileDate", "lunes, 03 de octubre de 2011 17:23\0"
END
END
BLOCK "VarFileInfo"