unit uEditorResultadoAlbaranesConArticulo; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, uEditorAlbaranesProveedor, JSDialog, Menus, DB, uDAInterfaces, uDADataTable, JvAppStorage, JvAppRegistryStorage, JvComponentBase, JvFormPlacement, ImgList, PngImageList, StdActns, ActnList, ComCtrls, JvExComCtrls, JvStatusBar, TBX, TB2ExtItems, TBXExtItems, TB2Item, TB2Dock, TB2Toolbar, pngimage, ExtCtrls, JvExControls, JvNavigationPane, uIEditorResultadoAlbaranesConArticulo, uBizAlbaranesProveedor, StdCtrls; type TfEditorResultadoAlbaranesConArticulo = class(TfEditorAlbaranesProveedor, IEditorResultadoAlbaranesConArticulo) pnlHeader: TPanel; lblTitle: TLabel; lblComments: TLabel; private function GetAlbaranesProveedorSeleccionados: IBizAlbaranProveedor; function GetMensaje: String; procedure SetMensaje(const AValue: String); procedure PonerTitulos(const ATitulo: String = ''); override; protected procedure ModificarInterno; override; public property Mensaje : String read GetMensaje write SetMensaje; property AlbaranesProveedorSeleccionados: IBizAlbaranProveedor read GetAlbaranesProveedorSeleccionados; end; var fEditorResultadoAlbaranesConArticulo: TfEditorResultadoAlbaranesConArticulo; implementation uses uStringsUtils, uGridUtils, uDBSelectionListUtils, uAlbaranesProveedorController; {$R *.dfm} function TfEditorResultadoAlbaranesConArticulo.GetAlbaranesProveedorSeleccionados: IBizAlbaranProveedor; begin SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Albaranes as ISeleccionable).SelectedRecords); // En SelectedRecords tengo los ID de las filas seleccionadas del grid Result := (Controller as IAlbaranesProveedorController).ExtraerSeleccionados(Albaranes) as IBizAlbaranProveedor; end; function TfEditorResultadoAlbaranesConArticulo.GetMensaje: String; begin Result := lblComments.Caption; end; procedure TfEditorResultadoAlbaranesConArticulo.ModificarInterno; var AAlbaran: IBizAlbaranProveedor; begin // inherited; AAlbaran := FController.Buscar(Albaranes.ID); AAlbaran.DataTable.Active := True; FController.Ver(AAlbaran); end; procedure TfEditorResultadoAlbaranesConArticulo.PonerTitulos(const ATitulo: String); var AHeaderText, AWindowText : String; begin if EsCadenaVacia(ATitulo) then begin AHeaderText := FHeaderText; AWindowText := 'Listado de albaranes de proveedor encontrados' end else begin AHeaderText := ATitulo; AWindowText := 'Listado de albaranes de proveedor encontrados'; end; if ReadOnly then begin AHeaderText := AHeaderText + ' (NO MODIFICABLE)'; AWindowText := AWindowText + ' (NO MODIFICABLE)'; end; JvNavPanelHeader.Caption := AHeaderText; Caption := AWindowText; end; procedure TfEditorResultadoAlbaranesConArticulo.SetMensaje(const AValue: String); begin lblComments.Caption := AValue; end; end.