private WeakReference <PpsMasterDataRow> referencedRow = null; // pointer to the actual row /// <summary></summary> /// <param name="row"></param> /// <param name="column"></param> public PpsMasterDataExtendedValue(PpsDataRow row, PpsDataColumnDefinition column) : base(row, column) { this.environment = PpsDataSetDefinitionDesktop.GetEnvironmentFromColumn(column); this.masterDataTable = environment.MasterData.GetTable( column.Meta.GetProperty <string>("refTable", null) ?? throw new ArgumentNullException("refTable", "Meta attribute refTable is not definied.") ) ?? throw new ArgumentNullException("refTable"); } // ctor
/// <summary></summary> /// <param name="row"></param> /// <param name="column"></param> public PpsObjectExtendedValue(PpsDataRow row, PpsDataColumnDefinition column) : base(row, column) { this.environment = PpsDataSetDefinitionDesktop.GetEnvironmentFromColumn(column); this.dataset = (row.Table.DataSet as IPpsObjectBasedDataSet) ?? throw new ArgumentException("Dataset does not implement IPpsObjectBasedDataSet."); } // ctor
/// <summary></summary> /// <param name="row"></param> /// <param name="column"></param> public PpsLinkedObjectExtendedValue(PpsDataRow row, PpsDataColumnDefinition column) : base(row, column) { this.environment = PpsDataSetDefinitionDesktop.GetEnvironmentFromColumn(column); this.dataset = row.Table.DataSet as IPpsObjectBasedDataSet; } // ctor