/// <summary> /// override - always get a new record, and no need to refresh the position cache /// </summary> /// <returns></returns> protected override IRecord GetBasicRecord() { IRecord record = DataviewSynchronizer.GetRecord(false); GatewayResult result = TaskViews.GetPrimaryView().Fetch(record); if (!result.Success) { DataviewSynchronizer.RemoveRecord(record); record = null; } return(record); }
/// <summary> /// /// </summary> /// <returns></returns> internal override ReturnResultBase Execute() { IRecord record = DataviewSynchronizer.GetCurrentRecord(); GatewayResult result = TaskViews.GetPrimaryView().FetchCurrent(record); if (result.Success) { TaskViews.RecordComputer.Compute(record, false, false, false); } return(result); }
/// <summary> /// fetch record /// </summary> /// <returns></returns> protected virtual IRecord GetBasicRecord() { IRecord record = DataviewSynchronizer.GetRecord(UseFirstRecord); UseFirstRecord = false; GatewayResult result = TaskViews.GetPrimaryView().Fetch(record); UpdateViewEnd(result); if (!result.Success) { DataviewSynchronizer.RemoveRecord(record); record = null; } return(record); }