unit uEditorElegirTarifa; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, cxControls, cxContainer, cxEdit, cxTextEdit, cxMaskEdit, cxDropDownEdit, cxCalendar, ExtCtrls, uEditorBasico, uIEditorElegirTarifa, cxGraphics, DB, uDAInterfaces, uDADataTable, cxDBEdit, uTarifasController, cxLookupEdit, cxDBLookupEdit, cxDBLookupComboBox, uBizTarifas; type TfEditorElegirTarifa = class(TfEditorBasico, IEditorElegirTarifa) Label1: TLabel; bAceptar: TButton; bCancelar: TButton; combo: TLabel; Panel1: TPanel; cbTarifa: TcxLookupComboBox; dsTarifa: TDADataSource; procedure FormShow(Sender: TObject); procedure FormDestroy(Sender: TObject); private FController: ITarifasController; FListaTarifas : IBizTarifa; FTarifa: String; function GetTarifa: String; procedure SetTarifa(const Value: String); public property Tarifa: String Read GetTarifa write SetTarifa; end; implementation {$R *.dfm} uses uFactuGES_App; procedure TfEditorElegirTarifa.FormDestroy(Sender: TObject); begin FController := Nil; FListaTarifas := Nil; end; procedure TfEditorElegirTarifa.FormShow(Sender: TObject); begin FController := TTarifasController.Create; FListaTarifas := FController.BuscarTodos; FListaTarifas.DataTable.Active := True; dsTarifa.DataTable := FListaTarifas.DataTable; cbTarifa.ItemIndex := 0; end; function TfEditorElegirTarifa.GetTarifa: String; begin Result := FListaTarifas.DESCRIPCION; end; procedure TfEditorElegirTarifa.SetTarifa(const Value: String); begin // cbTarifa.ItemIndex := cbTarifa.Properties.Items.IndexOfName(Value); end; end.