This repository has been archived on 2024-11-28. You can view files and clone it, but cannot push or open issues or pull requests.
Noviseda_FactuGES2/Source/Modulos/Inventario/Views/uViewEntradaSalidaArticulos.pas
2010-04-08 18:19:23 +00:00

165 lines
5.6 KiB
ObjectPascal

unit uViewEntradaSalidaArticulos;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter,
cxData, cxDataStorage, cxEdit, DB, cxDBData, ImgList, PngImageList,
uDADataTable, ActnList, ComCtrls, ToolWin, cxGridLevel, cxClasses,
cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxGrid, cxDBLookupComboBox, uViewGrid, StdCtrls,
dxPSGlbl, dxPSUtl, dxPSEngn, dxPrnPg, dxBkgnd, dxWrap,
dxPrnDev, dxPSCompsProvider, dxPSFillPatterns, dxPSEdgePatterns,
cxGridCustomPopupMenu, cxGridPopupMenu, dxPSCore, dxPScxCommon, dxPScxGrid6Lnk,
uAlmacenesController, uBizAlmacenes, TB2Item, SpTBXItem, TB2Dock, TB2Toolbar,
uDataModuleInventario, cxRichEdit, cxTextEdit, dxPgsDlg, SpTBXDkPanels,
uViewFiltroBase, cxSpinEdit, uDAInterfaces, cxLookAndFeels,
cxLookAndFeelPainters, dxPSPDFExportCore, dxPSPDFExport, cxDrawTextUtils,
dxPSPrVwStd, dxPSPrVwAdv, dxPScxEditorProducers, dxPScxExtEditorProducers,
dxPScxPageControlProducer, uCustomView, uViewBase, cxButtonEdit, uInventarioController,
uArticulosInventarioController, uBizInventario, Grids, DBGrids;
type
IViewViewEntradaSalidaArticulos = interface(IViewGrid)
['{C195FC01-604A-484E-A809-0ED49890DBBE}']
// function GetAlmacenes: IBizAlmacen;
// property Almacenes: IBizAlmacen read GetAlmacenes;
function GetInventario: IBizInventario;
procedure SetInventario(const Value: IBizInventario);
property Inventario: IBizInventario read GetInventario write SetInventario;
end;
TfrViewEntradaSalidaArticulos = class(TfrViewGrid, IViewViewEntradaSalidaArticulos)
DADataSourceAlmacenes: TDADataSource;
cxGridViewRecID: TcxGridDBColumn;
cxGridViewID: TcxGridDBColumn;
cxGridViewID_ARTICULO: TcxGridDBColumn;
cxGridViewCANTIDAD: TcxGridDBColumn;
cxGridViewID_PEDIDO_PROVEEDOR: TcxGridDBColumn;
cxGridViewID_PEDIDO_CLIENTE: TcxGridDBColumn;
cxGridViewREFERENCIA_PED_CLI: TcxGridDBColumn;
cxGridViewDESCRIPCION: TcxGridDBColumn;
cxGridViewID_EMPRESA: TcxGridDBColumn;
cxGridViewREFERENCIA: TcxGridDBColumn;
cxGridViewREFERENCIA_PROV: TcxGridDBColumn;
cxGridViewSTOCK: TcxGridDBColumn;
cxStyle_CANTIDAD_IMPAR: TcxStyle;
cxStyle_CANTIDAD_PAR: TcxStyle;
cxGridViewCANTIDAD2: TcxGridDBColumn;
procedure cxGridViewStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
procedure cxGridViewCANTIDAD2PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure CustomViewDestroy(Sender: TObject);
procedure CustomViewCreate(Sender: TObject);
private
FInventarioController : IInventarioController;
FInventario: IBizInventario;
function GetInventario: IBizInventario;
procedure SetInventario(const Value: IBizInventario);
//Es para cuando el almacen destino sea relativo a cada artículo, como lo vamos a
//hacer relativo al conjunto esto sobra
// FController: IAlmacenesController;
// FAlmacenes: IBizAlmacen;
// function GetAlmacenes: IBizAlmacen;
public
// property Almacenes: IBizAlmacen read GetAlmacenes;
// constructor Create(AOwner : TComponent); override;
// destructor destroy; override;
property Inventario: IBizInventario read GetInventario write SetInventario;
end;
implementation
{$R *.dfm}
uses uDataModuleAlmacenes;
{ TfrViewEntradaArticulosInventario }
{constructor TfrViewEntradaSalidaArticulos.Create(AOwner: TComponent);
begin
inherited;
FController := TAlmacenesController.Create;
FAlmacenes := FController.BuscarTodos;
DADataSourceAlmacenes.DataTable := FAlmacenes.DataTable;
DADataSourceAlmacenes.DataTable.Active := True;
end;
destructor TfrViewEntradaSalidaArticulos.destroy;
begin
FController := Nil;
inherited;
end;
function TfrViewEntradaSalidaArticulos.getAlmacenes: IBizAlmacen;
begin
Result := FAlmacenes;
end;}
{ TfrViewEntradaSalidaArticulos }
{ TfrViewEntradaSalidaArticulos }
procedure TfrViewEntradaSalidaArticulos.CustomViewCreate(Sender: TObject);
begin
inherited;
FInventarioController := TInventarioController.Create;
end;
procedure TfrViewEntradaSalidaArticulos.CustomViewDestroy(Sender: TObject);
begin
FInventario := Nil;
FInventarioController := Nil;
inherited;
end;
procedure TfrViewEntradaSalidaArticulos.cxGridViewCANTIDAD2PropertiesButtonClick(
Sender: TObject; AButtonIndex: Integer);
begin
inherited;
(FInventarioController as IInventarioController).ModificarCantidadColores(FInventario);
end;
procedure TfrViewEntradaSalidaArticulos.cxGridViewStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
begin
inherited;
if Assigned(AItem) then
begin
if AItem.Index = cxGridViewCANTIDAD.Index then
begin
if Odd(ARecord.Index) then
AStyle := cxStyle_NORMAL_PAR
else
AStyle := cxStyle_NORMAL_IMPAR;
AStyle.Font.Style := [fsBold];
end
else begin
if Odd(ARecord.Index) then
AStyle := cxStyle_ORDENADO_PAR
else
AStyle := cxStyle_ORDENADO_IMPAR;
end;
end;
end;
function TfrViewEntradaSalidaArticulos.GetInventario: IBizInventario;
begin
Result := FInventario;
end;
procedure TfrViewEntradaSalidaArticulos.SetInventario(const Value: IBizInventario);
begin
FInventario := Value;
dsDataSource.DataTable := FInventario.DataTable;
end;
end.