unit uArticulosPedidoClienteController;

interface

uses
  uDADataTable, uArticulosController, uBizArticulos;

type
  IArticulosPedidoClienteController = interface(IArticulosController)
  ['{B334F1FC-65B7-4E77-8D1B-A7CF12F6CF3C}']
  end;

  TArticulosPedidoClienteController = class(TArticulosController, IArticulosPedidoClienteController)
  public
    function ElegirArticulos(AArticulos : IBizArticulo; AMensaje: String; AMultiSelect: Boolean): IBizArticulo; override;
  end;

implementation

{ TArticulosPedidoClienteController }

uses Controls, uIEditorElegirArticulosPedidosCliente, uIEditorElegirArticulos;

function TArticulosPedidoClienteController.ElegirArticulos(AArticulos: IBizArticulo; AMensaje: String;
  AMultiSelect: Boolean): IBizArticulo;
var
  AEditor : IEditorElegirArticulosPedidosCliente;
begin
  Result := NIL;
  CreateEditor('EditorElegirArticulosPedidosCliente', IEditorElegirArticulosPedidosCliente, AEditor);
  try
    with AEditor do
    begin
      Controller := Self;
      Articulos := AArticulos;
      MultiSelect := AMultiSelect;
      Mensaje := AMensaje;
      if IsPositiveResult(ShowModal) then
        Result := ArticulosSeleccionados;
	  Release;	
    end;
  finally
    AEditor := NIL;
  end;
end;

end.
