281 lines
8.1 KiB
ObjectPascal
281 lines
8.1 KiB
ObjectPascal
unit uEditorControlStockEDI;
|
||
|
||
interface
|
||
|
||
uses
|
||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||
Dialogs, uEditorControlBase, DB, uDADataTable, JvAppStorage,
|
||
JvAppRegistryStorage, JvComponentBase, JvFormPlacement, ImgList,
|
||
PngImageList, StdActns, ActnList, ComCtrls, TBX, TB2Item, TB2Dock,
|
||
TB2Toolbar, ExtCtrls, JvExControls, JvComponent, JvNavigationPane,
|
||
uCustomView, uViewBase, uViewControlBase, Grids, DBGrids, pngimage, StdCtrls,
|
||
uEditorGridBase, uViewGridBase, uViewGrid, Menus, TB2ExtItems, TBXExtItems,
|
||
|
||
uBizStock,uViewControGridStockEDI, uViewControGridStockPrendasCentros,
|
||
uViewControGridStockEDIInventario, uDAInterfaces, JvTabBar;
|
||
|
||
type
|
||
IEditorControlStockEDI = interface(IEditorGridBase)
|
||
['{8CDABF14-FD43-48BF-8B33-B6B5A9B03CEB}']
|
||
{ function GetItems: IBizStockEDI;
|
||
procedure SetItems(const Value: IBizStockEDI);
|
||
property Items: IBizStockEDI read GetItems write SetItems;}
|
||
end;
|
||
|
||
TfEditorControlStockEDI = class(TfEditorGridBase, IEditorControlStockEDI)
|
||
dsVentasTerminadas: TDADataSource;
|
||
TBXSeparatorItem16: TTBXSeparatorItem;
|
||
tbxiAnchoAuto: TTBXItem;
|
||
actExpandir: TAction;
|
||
actContraer: TAction;
|
||
actAnchoAuto: TAction;
|
||
TBXItem37: TTBXItem;
|
||
TBXItem36: TTBXItem;
|
||
TBXItem35: TTBXItem;
|
||
TBXSeparatorItem17: TTBXSeparatorItem;
|
||
TBXItem38: TTBXItem;
|
||
TBXItem39: TTBXItem;
|
||
frViewControlGridStockEDI1: TfrViewControlGridStockEDI;
|
||
PageControl1: TPageControl;
|
||
tabResumen: TTabSheet;
|
||
tabDesglose: TTabSheet;
|
||
frViewControlGridStockPrendasCentros1: TfrViewControlGridStockPrendasCentros;
|
||
tabInventario: TTabSheet;
|
||
frViewControlGridStockEDIInventario1: TfrViewControlGridStockEDIInventario;
|
||
JvTabBar1: TJvTabBar;
|
||
JvModernTabBarPainter1: TJvModernTabBarPainter;
|
||
procedure actAnchoAutoExecute(Sender: TObject);
|
||
procedure FormShow(Sender: TObject); override;
|
||
procedure actExpandirExecute(Sender: TObject);
|
||
procedure actContraerExecute(Sender: TObject);
|
||
procedure PageControl1Change(Sender: TObject);
|
||
procedure actRefrescarExecute(Sender: TObject);
|
||
procedure JvTabBar1TabSelected(Sender: TObject; Item: TJvTabBarItem);
|
||
protected
|
||
FDesglose : IBizStockEDI;
|
||
FInventario : IBizStockEDIInventario;
|
||
FResumen : IBizStockPrendasCentros;
|
||
|
||
function GetItemsDesglose: IBizStockEDI;
|
||
procedure SetItemsDesglose(const Value: IBizStockEDI);
|
||
|
||
function GetItemsInventario: IBizStockEDIInventario;
|
||
procedure SetItemsInventario(const Value: IBizStockEDIInventario);
|
||
|
||
function GetItemsResumen: IBizStockPrendasCentros;
|
||
procedure SetItemsResumen(const Value: IBizStockPrendasCentros);
|
||
public
|
||
property ItemsDesglose: IBizStockEDI read GetItemsDesglose write SetItemsDesglose;
|
||
property ItemsInventario: IBizStockEDIInventario read GetItemsInventario write SetItemsInventario;
|
||
property ItemsResumen: IBizStockPrendasCentros read GetItemsResumen write SetItemsResumen;
|
||
constructor Create(AOwner: TComponent); override;
|
||
end;
|
||
|
||
|
||
implementation
|
||
|
||
uses
|
||
cxControls, uEditorUtils, DateUtils, uCustomEditor, uEditorBase,
|
||
uDataModuleStock;
|
||
|
||
{$R *.dfm}
|
||
|
||
{ TfEditorControlStockEDI }
|
||
|
||
procedure TfEditorControlStockEDI.actAnchoAutoExecute(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
case PageControl1.ActivePageIndex of
|
||
0 : frViewControlGridStockPrendasCentros1.AjustarAncho;
|
||
1 : frViewControlGridStockEDI1.AjustarAncho;
|
||
2 : frViewControlGridStockEDIInventario1.AjustarAncho;
|
||
end;
|
||
end;
|
||
|
||
procedure TfEditorControlStockEDI.FormShow(Sender: TObject);
|
||
begin
|
||
// inherited; <- No descomentar
|
||
|
||
if not Assigned(ViewGrid) then
|
||
raise Exception.Create('No hay una vista asignada');
|
||
|
||
case PageControl1.ActivePageIndex of
|
||
0 : ViewGrid.ShowEmbedded(tabResumen);
|
||
1 : ViewGrid.ShowEmbedded(tabDesglose);
|
||
2 : ViewGrid.ShowEmbedded(tabInventario);
|
||
end;
|
||
|
||
ViewGrid.ExpandirTodo;
|
||
end;
|
||
|
||
constructor TfEditorControlStockEDI.Create(AOwner: TComponent);
|
||
var
|
||
i:Integer;
|
||
|
||
begin
|
||
inherited;
|
||
FResumen := nil;
|
||
FDesglose := nil;
|
||
FInventario := nil;
|
||
|
||
Self.Caption := 'Control de stock en centros';
|
||
JvNavPanelHeader.Caption := Self.Caption;
|
||
|
||
//Para ocultar las pesta<74>as y dejar que se encargue del cambio el componente de jv
|
||
for i := 0 to PageControl1.PageCount - 1 do
|
||
begin
|
||
PageControl1.Pages[i].TabVisible := false;
|
||
end;
|
||
PageControl1.ActivePageIndex := 0;
|
||
|
||
if not Assigned(FResumen) then
|
||
ItemsResumen := dmStock.GetItemsStockPrendasCentros;
|
||
|
||
ViewGrid := frViewControlGridStockPrendasCentros1;
|
||
end;
|
||
|
||
procedure TfEditorControlStockEDI.actExpandirExecute(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
ViewGrid.ExpandirTodo;
|
||
end;
|
||
|
||
procedure TfEditorControlStockEDI.actRefrescarExecute(Sender: TObject);
|
||
begin
|
||
case PageControl1.ActivePageIndex of
|
||
0 : begin
|
||
frViewControlGridStockPrendasCentros1.Refresh;
|
||
end;
|
||
1 : begin
|
||
frViewControlGridStockEDI1.Refresh;
|
||
end;
|
||
2 : begin
|
||
frViewControlGridStockEDIInventario1.Refresh
|
||
end;
|
||
end;
|
||
|
||
inherited;
|
||
|
||
ViewGrid.ExpandirTodo;
|
||
ViewGrid.GotoFirst;
|
||
end;
|
||
|
||
procedure TfEditorControlStockEDI.actContraerExecute(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
ViewGrid.ContraerTodo;
|
||
end;
|
||
|
||
function TfEditorControlStockEDI.GetItemsDesglose: IBizStockEDI;
|
||
begin
|
||
Result := FDesglose;
|
||
end;
|
||
|
||
function TfEditorControlStockEDI.GetItemsResumen: IBizStockPrendasCentros;
|
||
begin
|
||
Result := FResumen;
|
||
end;
|
||
|
||
procedure TfEditorControlStockEDI.JvTabBar1TabSelected(Sender: TObject; Item: TJvTabBarItem);
|
||
begin
|
||
inherited;
|
||
PageControl1.ActivePageIndex := Item.Index;
|
||
end;
|
||
|
||
procedure TfEditorControlStockEDI.SetItemsDesglose(const Value: IBizStockEDI);
|
||
begin
|
||
FDesglose := Value;
|
||
if Assigned(FDesglose) then
|
||
begin
|
||
ShowHourglassCursor;
|
||
try
|
||
dsDataTable.DataTable := FDesglose.DataTable;
|
||
frViewControlGridStockEDI1.Items := FDesglose;
|
||
|
||
// if not FDesglose.DataTable.Active then
|
||
// FDesglose.DataTable.Active := True;
|
||
|
||
actAnchoAuto.Execute;
|
||
finally
|
||
HideHourglassCursor;
|
||
end;
|
||
end;
|
||
end;
|
||
|
||
procedure TfEditorControlStockEDI.SetItemsResumen(const Value: IBizStockPrendasCentros);
|
||
begin
|
||
FResumen := Value;
|
||
if Assigned(FResumen) then
|
||
begin
|
||
ShowHourglassCursor;
|
||
try
|
||
dsDataTable.DataTable := FResumen.DataTable;
|
||
frViewControlGridStockPrendasCentros1.Items := FResumen;
|
||
|
||
// if not FResumen.DataTable.Active then
|
||
// FResumen.DataTable.Active := True;
|
||
|
||
actAnchoAuto.Execute;
|
||
finally
|
||
HideHourglassCursor;
|
||
end;
|
||
end;
|
||
end;
|
||
|
||
procedure TfEditorControlStockEDI.PageControl1Change(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
Self.Update;
|
||
|
||
//Quitamos el filtro que hubiera
|
||
actQuitarFiltro.Execute;
|
||
|
||
case PageControl1.ActivePageIndex of
|
||
0 : begin
|
||
ViewGrid := frViewControlGridStockPrendasCentros1;
|
||
if not Assigned(FResumen) then
|
||
ItemsResumen := dmStock.GetItemsStockPrendasCentros;
|
||
end;
|
||
1 : begin
|
||
ViewGrid := frViewControlGridStockEDI1;
|
||
if not Assigned(FDesglose) then
|
||
ItemsDesglose := dmStock.GetItemsStockEDI;
|
||
end;
|
||
2 : begin
|
||
ViewGrid := frViewControlGridStockEDIInventario1;
|
||
if not Assigned(FInventario) then
|
||
ItemsInventario := dmStock.GetItemsStockEDIInventario;
|
||
end;
|
||
end;
|
||
|
||
ViewGrid.Refresh;
|
||
end;
|
||
|
||
function TfEditorControlStockEDI.GetItemsInventario: IBizStockEDIInventario;
|
||
begin
|
||
Result := FInventario;
|
||
end;
|
||
|
||
procedure TfEditorControlStockEDI.SetItemsInventario(const Value: IBizStockEDIInventario);
|
||
begin
|
||
FInventario := Value;
|
||
if Assigned(FInventario) then
|
||
begin
|
||
ShowHourglassCursor;
|
||
try
|
||
dsDataTable.DataTable := FInventario.DataTable;
|
||
frViewControlGridStockEDIInventario1.Items := FInventario;
|
||
|
||
// if not FInventario.DataTable.Active then
|
||
// FInventario.DataTable.Active := True;
|
||
|
||
actAnchoAuto.Execute;
|
||
finally
|
||
HideHourglassCursor;
|
||
end;
|
||
end;
|
||
end;
|
||
|
||
end.
|
||
|