Tecsitel_FactuGES2/Source/Modulos/Articulos/Views/uViewArticulos.pas

153 lines
4.9 KiB
ObjectPascal
Raw Normal View History

unit uViewArticulos;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewGrid, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxDataStorage, cxEdit, DB, cxDBData, uDADataTable, cxGridLevel,
cxClasses, cxControls, cxGridCustomView, cxGridCustomTableView,
cxGridTableView, cxGridDBTableView, cxGrid, uBizArticulos, ActnList, Menus,
cxGridBandedTableView, cxGridDBBandedTableView, JvComponent,
JvFormAutoSize, PngImageList, ImgList, dxPSGlbl, dxPSUtl, dxPSEngn,
dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns,
dxPSEdgePatterns, cxIntlPrintSys3, dxPSCore, dxPScxCommon, dxPScxGrid6Lnk,
cxGridCustomPopupMenu, cxGridPopupMenu, cxCurrencyEdit, cxSpinEdit, cxCheckBox,
cxCheckComboBox, cxImageComboBox, TB2Item, TBX, TB2Toolbar, TBXDkPanels,
TB2Dock, uViewFiltroBase, dxPgsDlg, uDAInterfaces, dxSkinsCore, dxSkinBlack,
dxSkinBlue, dxSkinCaramel, dxSkinCoffee, dxSkinGlassOceans, dxSkiniMaginary,
dxSkinLilian, dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin,
dxSkinMoneyTwins, dxSkinOffice2007Black, dxSkinOffice2007Blue,
dxSkinOffice2007Green, dxSkinOffice2007Pink, dxSkinOffice2007Silver,
dxSkinSilver, dxSkinStardust, dxSkinsDefaultPainters, dxSkinValentine,
dxSkinXmas2008Blue, dxSkinscxPCPainter;
type
IViewArticulos = interface(IViewGrid)
['{4C09BEC8-C82B-4DE8-8C36-40DB62224E95}']
function GetArticulos: IBizArticulo;
procedure SetArticulos(const Value: IBizArticulo);
property Articulos: IBizArticulo read GetArticulos write SetArticulos;
end;
TfrViewArticulos = class(TfrViewGrid, IViewArticulos)
cxGridViewREFERENCIA: TcxGridDBColumn;
cxGridViewDESCRIPCION: TcxGridDBColumn;
cxGridViewFAMILIA: TcxGridDBColumn;
cxGridViewNOMBRE_PROVEEDOR: TcxGridDBColumn;
actFamilia: TAction;
actProveedor: TAction;
TBXItem2: TTBXItem;
TBXItem3: TTBXItem;
TBXSeparatorItem1: TTBXSeparatorItem;
TBXSeparatorItem2: TTBXSeparatorItem;
cxGridViewINVENTARIABLE: TcxGridDBColumn;
cxGridViewUNIDAD_MEDIDA: TcxGridDBColumn;
cxGridViewFABRICANTE: TcxGridDBColumn;
TBXItem4: TTBXItem;
TBXSeparatorItem3: TTBXSeparatorItem;
actFabricante: TAction;
cxGridViewREFERENCIA_FABR: TcxGridDBColumn;
procedure actProveedorExecute(Sender: TObject);
procedure actProveedorUpdate(Sender: TObject);
procedure actFamiliaExecute(Sender: TObject);
procedure actFamiliaUpdate(Sender: TObject);
procedure actFabricanteExecute(Sender: TObject);
procedure actFabricanteUpdate(Sender: TObject);
protected
FArticulos: IBizArticulo;
function GetArticulos: IBizArticulo; virtual;
procedure SetArticulos(const Value: IBizArticulo); virtual;
public
property Articulos: IBizArticulo read GetArticulos write SetArticulos;
end;
implementation
{$R *.dfm}
uses //uDataModuleArticulos,
schArticulosClient_Intf;
{ TfrViewArticulos }
{
******************************* TfrViewArticulos *******************************
}
function TfrViewArticulos.GetArticulos: IBizArticulo;
begin
Result := FArticulos;
end;
procedure TfrViewArticulos.SetArticulos(const Value: IBizArticulo);
begin
FArticulos := Value;
if Assigned(FArticulos) then
dsDataSource.DataTable := FArticulos.DataTable;
end;
procedure TfrViewArticulos.actFabricanteExecute(Sender: TObject);
begin
if (cxGridViewFABRICANTE.GroupIndex < 0) then
begin
cxGridViewFABRICANTE.GroupIndex := cxGridView.GroupedColumnCount;
cxGridViewFABRICANTE.Visible := False;
end
else
begin
cxGridViewFABRICANTE.GroupIndex := -1;
cxGridViewFABRICANTE.Visible := True;
end;
end;
procedure TfrViewArticulos.actFabricanteUpdate(Sender: TObject);
begin
inherited;
(Sender as TAction).Checked := not (cxGridViewFABRICANTE.GroupIndex < 0);
end;
procedure TfrViewArticulos.actFamiliaExecute(Sender: TObject);
begin
if (cxGridViewFAMILIA.GroupIndex < 0) then
begin
cxGridViewFAMILIA.GroupIndex := cxGridView.GroupedColumnCount;
cxGridViewFAMILIA.Visible := False;
end
else
begin
cxGridViewFAMILIA.GroupIndex := -1;
cxGridViewFAMILIA.Visible := True;
end;
end;
procedure TfrViewArticulos.actFamiliaUpdate(Sender: TObject);
begin
inherited;
(Sender as TAction).Checked := not (cxGridViewFAMILIA.GroupIndex < 0);
end;
procedure TfrViewArticulos.actProveedorExecute(Sender: TObject);
begin
inherited;
if (cxGridViewNOMBRE_PROVEEDOR.GroupIndex < 0) then
begin
cxGridViewNOMBRE_PROVEEDOR.GroupIndex := cxGridView.GroupedColumnCount;
cxGridViewNOMBRE_PROVEEDOR.Visible := False;
end
else
begin
cxGridViewNOMBRE_PROVEEDOR.GroupIndex := -1;
cxGridViewNOMBRE_PROVEEDOR.Visible := True;
end;
end;
procedure TfrViewArticulos.actProveedorUpdate(Sender: TObject);
begin
inherited;
(Sender as TAction).Checked := not (cxGridViewNOMBRE_PROVEEDOR.GroupIndex < 0);
end;
end.