AlonsoYSal_FactuGES2/Source/Modulos/Inventario/Views/uEditorDetalleReservas.pas
2019-11-18 10:36:42 +00:00

234 lines
7.0 KiB
ObjectPascal
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

unit uEditorDetalleReservas;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
uCustomEditor, ImgList, PngImageList, StdActns, ActnList, TB2ExtItems, TBXExtItems, TBX, TB2Item,
TB2Dock, TB2Toolbar, JvExControls, JvComponent, JvNavigationPane,
uViewDetalleReservas, Menus, DB, uDADataTable, ComCtrls, uViewGrid,
uDAScriptingProvider, uDACDSDataTable, JvAppStorage,
JvAppRegistryStorage, JvFormPlacement, pngimage, ExtCtrls, uCustomView,
uViewBase, uViewBarraSeleccion, JvComponentBase, uEditorGridBase,
uIEditorDetalleReservas, uBizInventario, uViewGridBase,
JvExComCtrls, JvStatusBar, uViewGrid2Niveles, JSDialog, uDAInterfaces;
type
TfEditorDetalleReservas = class(TfEditorGridBase, IEditorDetalleReservas)
TBXSeparatorItem17: TTBXSeparatorItem;
actExpandir: TAction;
actContraer: TAction;
frViewDetalleReservas1: TfrViewDetalleReservas;
procedure FormShow(Sender: TObject);
private
function SeleccionarAlmacen(Descripcion: String): Integer;
function DarIDAlmacenSeleccionado(Descripcion: String): Integer;
protected
FArticulo: IBizInventario;
FDetalleReservas: IBizDetalleReservas;
// FController : IDetalleReservasController;
function GetArticulo: IBizInventario;
procedure SetArticulo(const Value: IBizInventario);
function GetDetalleReservas: IBizDetalleReservas;
procedure SetDetalleReservas(const Value: IBizDetalleReservas);
// function GetController : IDetalleReservasController; virtual;
// procedure SetController (const Value : IDetalleReservasController); virtual;
{ procedure SetMultiSelect (AValue : Boolean);
function GetMultiSelect : Boolean;
function GetArticulosSeleccionados: IBizDetalleReservas;
}
procedure ImprimirInterno; override;
procedure PrevisualizarInterno; override;
public
property Articulo: IBizInventario read GetArticulo write SetArticulo;
property DetalleReservas: IBizDetalleReservas read GetDetalleReservas write SetDetalleReservas;
// property Controller : IDetalleReservasController read GetController write SetController;
// property ArticulosSeleccionados: IBizDetalleReservas read GetArticulosSeleccionados;
// property MultiSelect : Boolean read GetMultiSelect write SetMultiSelect;
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure PonerTitulos(const ATitulo: string = ''); override;
end;
implementation
{$R *.DFM}
uses
cxControls, uGridUtils, uDataModuleInventario, uDataModuleUsuarios,
uEditorBase, uDBSelectionListUtils, cxGridDBTableView, cxGridCustomTableView,
uAlmacenesController, uBizAlmacenes, uFactuGES_App,
// uGenerarAlbaranesProvUtils,
schInventarioClient_Intf;
{, uDBSelectionList, uDataModulePedidosProveedor,
uBizPedidosProveedor, uBizMontajes, uDataModuleMontajes;
}
{ TfEditorDetalleReservas }
{
***************************** TfEditorDetalleReservas *****************************
}
constructor TfEditorDetalleReservas.Create(AOwner: TComponent);
begin
inherited;
ViewGrid := frViewDetalleReservas1;
end;
function TfEditorDetalleReservas.DarIDAlmacenSeleccionado(Descripcion: String): Integer;
var
AAlmacenes : IBizAlmacen;
AAlmacenesController : IAlmacenesController;
Respuesta : integer;
begin
if (ViewGrid._Grid.ActiveLevel.Tag = -1) then
Result := SeleccionarAlmacen(Descripcion)
else
Result := ViewGrid._Grid.ActiveLevel.Tag;
end;
destructor TfEditorDetalleReservas.Destroy;
begin
FDetalleReservas := NIL;
inherited;
end;
procedure TfEditorDetalleReservas.FormShow(Sender: TObject);
begin
inherited;
if not Assigned(ViewGrid) then
raise Exception.Create('No hay ninguna vista asignada');
if not Assigned(DetalleReservas) then
raise Exception.Create('No hay ning<6E>n DetalleReservas asignado');
DetalleReservas.DataTable.Active := True;
ViewGrid.GotoFirst;
end;
{
function TfEditorDetalleReservas.GetArticulosSeleccionados: IBizDetalleReservas;
begin
SeleccionarFilasDesdeGrid((ViewGrid as IViewDetalleReservas)._FocusedView, (DetalleReservas as ISeleccionable).SelectedRecords);
// En Presupuestos.SelectedRecords tengo los ID de las filas seleccionadas del grid
Result := Controller.ExtraerSeleccionados(DetalleReservas);
end;
function TfEditorDetalleReservas.GetController: IDetalleReservasController;
begin
Result := FController;
end;
}
function TfEditorDetalleReservas.GetArticulo: IBizInventario;
begin
Result := FArticulo;
end;
function TfEditorDetalleReservas.GetDetalleReservas: IBizDetalleReservas;
begin
Result := FDetalleReservas;
end;
{
function TfEditorDetalleReservas.GetMultiSelect: Boolean;
begin
Result := ViewGrid.MultiSelect;
end;
}
procedure TfEditorDetalleReservas.ImprimirInterno;
begin
inherited;
end;
procedure TfEditorDetalleReservas.PonerTitulos(const ATitulo: string);
var
FTitulo : String;
begin
FTitulo := 'Detalle de reservas en almacen - ' + AppFactuGES.EmpresaActiva.NOMBRE;
inherited PonerTitulos(FTitulo);
end;
procedure TfEditorDetalleReservas.PrevisualizarInterno;
begin
inherited;
end;
function TfEditorDetalleReservas.SeleccionarAlmacen(Descripcion: String): Integer;
var
AAlmacenes : IBizAlmacen;
Respuesta : integer;
begin
Result := -1;
{
JsElegirAlmacenDialog.Instruction.Text := Descripcion;
with JsElegirAlmacenDialog.RadioButtons do
begin
Clear;
AAlmacenes := (ViewGrid as IViewDetalleReservas).Almacenes;
AAlmacenes.First;
while not AAlmacenes.EOF do
begin
with Add do
begin
Caption := AAlmacenes.NOMBRE;
Value := 1000 + AAlmacenes.ID;
end;
//Asi sabemos que solo va a intentar chequear el primero si hemos a<>adido al menos un item
Items[0].Checked := True;
AAlmacenes.Next;
end;
end;
//Sacar la pantalla de selecci<63>n y devolver el almac<61>n seleccionado.
Respuesta := JsElegirAlmacenDialog.Execute;
if Respuesta <> IDCANCEL then
Result := JsElegirAlmacenDialog.RadioResult - 1000;
}
end;
{
procedure TfEditorDetalleReservas.SetController(const Value: IDetalleReservasController);
begin
FController := Value;
if Assigned(FController) then
begin
if Assigned(ViewGrid) then
(ViewGrid as IViewDetalleReservas).Almacenes := FController.AlmacenesController.BuscarTodos;
end;
end;
}
procedure TfEditorDetalleReservas.SetArticulo(const Value: IBizInventario);
begin
FArticulo := Value;
if Assigned(FArticulo) then
begin
tbxEditFiltro.Text := FArticulo.REFERENCIA;
end;
end;
procedure TfEditorDetalleReservas.SetDetalleReservas(const Value: IBizDetalleReservas);
begin
FDetalleReservas := Value;
dsDataTable.DataTable := FDetalleReservas.DataTable;
if Assigned(ViewGrid) then
(ViewGrid as IViewDetalleReservas).DetalleReservas := FDetalleReservas;
end;
{
procedure TfEditorDetalleReservas.SetMultiSelect(AValue: Boolean);
begin
ViewGrid.MultiSelect := AValue;
end;
}
end.