public ActionResult TrackProcess(RFProcessingTrackerHandle handle, string continueAction, string continueController, object routeValues) { ProcessController.SubmitModel(new Models.IO.ProcessingModel { Tracker = handle, ProcessingKey = handle.TrackerCode, ReturnAction = continueAction, ReturnController = continueController, ReturnValues = routeValues }); return(RedirectToAction("ProcessingStatus", "Process", new { area = "", processKey = handle.TrackerCode })); }
public ActionResult UpdateInputReport(long keyReference, string updates) { try { var activity = new RFInputReportsActivity(Context); var report = activity.GetInputReportDocument(keyReference); if (report != null) { var section = report.GetContent <RFRawReport>().GetFirstSection(); foreach (var update in JsonConvert.DeserializeObject <List <dynamic> >(updates)) { int rowNum = update.rowNum; if (section.Rows.Count >= rowNum) { var row = section.Rows.Skip(rowNum - 1).First(); foreach (JToken token in ((JObject)update.data).Children()) { if (token is JProperty) { row.SetString((token as JProperty).Name, (token as JProperty).Value.ToString()); } } } } using (var rfService = new RFServiceClient()) { RFProcessingTrackerHandle trackerKey = null; trackerKey = rfService.RFService.SubmitAndProcess(new List <RFCatalogEntryDTO> { new RFCatalogEntryDTO(report) }, new RFUserLogEntry { Action = "Update Input Report", Description = String.Format("Manually updated report {0}", report.Key.FriendlyString()), IsUserAction = true, IsWarning = false, Processor = null, ValueDate = report.Key.GraphInstance.ValueDate.Value, Username = Username }); ProcessController.SubmitModel(new ProcessingModel { Tracker = trackerKey, ProcessingKey = trackerKey.TrackerCode, FileKey = (report.Key as RFRawReportKey).ReportCode, FileName = (report.Key as RFRawReportKey).FriendlyString(), FileSize = 0, ReturnUrl = null }); return(RedirectToAction("ProcessingStatus", "Process", new { processKey = trackerKey.TrackerCode })); } } } catch (Exception ex) { Log.Exception(this, ex, "Error updating input report {0}", keyReference); } return(null); }