unit uArticulosMedicacionController;

interface

uses
  uDADataTable, cxControls, uArticulosController, uBizArticulos;

type
  IArticulosMedicacionController = interface(IArticulosController)
  ['{364399D6-0D30-4FBD-BD69-864DF882AC07}']
  end;

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

implementation

{ TArticulosMedicacionController }

uses
  Controls, uIEditorElegirArticulosMedicaciones, uIEditorElegirArticulos;

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

end.
