AbetoDesign_FactuGES2/Source/Modulos/Pedidos a proveedor/Controller/uArticulosPedidoProveedorController.pas

49 lines
1.6 KiB
ObjectPascal

unit uArticulosPedidoProveedorController;
interface
uses
uDADataTable, uArticulosController, uBizArticulos, uBizContactos;
type
IArticulosPedidoProveedorController = interface(IArticulosController)
['{8C8A8D8D-82D2-4434-81C3-36E4F43F3B3E}']
function ElegirArticulos(AArticulos : IBizArticulo; AMensaje: String; AMultiSelect: Boolean; const AProveedor: IBizProveedor): IBizArticulo;
end;
TArticulosPedidoProveedorController = class(TArticulosController, IArticulosPedidoProveedorController)
public
function ElegirArticulos(AArticulos : IBizArticulo; AMensaje: String; AMultiSelect: Boolean; const AProveedor: IBizProveedor): IBizArticulo; overload;
end;
implementation
{ TArticulosPedidoProveedorController }
uses Controls, cxControls, uIEditorElegirArticulosPedidosProveedor, uIEditorElegirArticulos;
function TArticulosPedidoProveedorController.ElegirArticulos(AArticulos: IBizArticulo; AMensaje: String;
AMultiSelect: Boolean; const AProveedor: IBizProveedor): IBizArticulo;
var
AEditor : IEditorElegirArticulosPedidosProveedor;
begin
Result := NIL;
CreateEditor('EditorElegirArticulosPedidoProveedor', IEditorElegirArticulosPedidosProveedor, AEditor);
if Assigned(AEditor) then
try
AEditor.Controller := Self;
AEditor.Articulos := AArticulos;
AEditor.Proveedor := AProveedor;
AEditor.MultiSelect := AMultiSelect;
AEditor.Mensaje := AMensaje;
if IsPositiveResult(AEditor.ShowModal) then
Result := AEditor.ArticulosSeleccionados;
finally
AEditor.Release;
AEditor := NIL;
end;
end;
end.