unit uArticulosFacturaProveedorController; interface uses uDADataTable, uArticulosController, uBizArticulos; type IArticulosFacturaProveedorController = interface(IArticulosController) ['{9B6F6963-D16F-43FE-B33F-47824A5FAFE7}'] end; TArticulosFacturaProveedorController = class(TArticulosController, IArticulosFacturaProveedorController) public function ElegirArticulos(AArticulos : IBizArticulo; AMensaje: String; AMultiSelect: Boolean): IBizArticulo; override; end; implementation { TArticulosFacturaProveedorController } uses Controls, uIEditorElegirArticulosFacturasProveedor, uIEditorElegirArticulos; function TArticulosFacturaProveedorController.ElegirArticulos(AArticulos: IBizArticulo; AMensaje: String; AMultiSelect: Boolean): IBizArticulo; var AEditor : IEditorElegirArticulosFacturasProveedor; begin Result := NIL; CreateEditor('EditorElegirArticulosFacturaProveedor', IEditorElegirArticulosFacturasProveedor, 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.