Beispiel #1
0
        void bindFailedExtractionsDataGrid(IList <ExtractorConfigurationTO> configs)
        {
            DataTable failedTable = new DataBindingUtils().getTableFromList(configs);

            datagridFailedExtractions.DataSource = failedTable;
            datagridFailedExtractions.DataBind();
        }
Beispiel #2
0
        void bindInProgressExtractionsDataGrid(IList <ExtractorConfigurationTO> configs)
        {
            DataTable inProgressTable = new DataBindingUtils().getTableFromList(configs);

            datagridInProgressExtractions.DataSource = inProgressTable;
            datagridInProgressExtractions.DataBind();
        }
        DataTable getBindableTable(TaggedExtractorConfigArrays tecas, Dictionary <String, EtlDownstreamStageTO> etlStageBySite)
        {
            Dictionary <String, String> siteIdsAndNames = DataBindingUtils.getSiteIdAndNameDict();
            Dictionary <String, IList <ExtractorConfigurationTO> > active    = getConfigsByKeyAndSite("Active", tecas);
            Dictionary <String, IList <ExtractorConfigurationTO> > queued    = getConfigsByKeyAndSite("Queued", tecas);
            Dictionary <String, IList <ExtractorConfigurationTO> > errored   = getConfigsByKeyAndSite("Errored", tecas);
            Dictionary <String, IList <ExtractorConfigurationTO> > completed = getConfigsByKeyAndSite("Completed", tecas);

            DataTable mock = new DataTable();

            mock.Columns.Add("site");
            mock.Columns.Add("progressBarMarkup");
            mock.Columns.Add("status");
            mock.Columns.Add("statusMarkup");
            mock.Columns.Add("adtStatus");
            mock.Columns.Add("adtFinishedTimestamp");
            mock.Columns.Add("labStatus");
            mock.Columns.Add("labFinishedTimestamp");
            mock.Columns.Add("vitalsStatus");
            mock.Columns.Add("vitalsFinishedTimestamp");
            mock.Columns.Add("bcmaStatus");
            mock.Columns.Add("bcmaFinishedTimestamp");
            mock.Columns.Add("pharmaStatus");
            mock.Columns.Add("pharmaFinishedTimestamp");

            for (int i = 0; i < siteIdsAndNames.Count; i++)
            {
                String currentSite = siteIdsAndNames.ElementAt(i).Key;

                String dateTimeFormatString = "M/d h:mm tt";

                // if any config has been marked errored for this site - show failure
                if (errored.ContainsKey(currentSite) && errored[currentSite] != null && errored[currentSite].Count > 0)
                {
                    String controlsText = DataBindingUtils.getProgressBarTextFromEnum(ProgressBarType.Failed_NotStarted);
                    String statusMarkup = DataBindingUtils.getStatusCssClassMarkupFromEnum(ProgressBarType.Failed_NotStarted);
                    mock.Rows.Add(new object[] { siteIdsAndNames.ElementAt(i).Value, DataBindingUtils.getProgressBarCssClassMarkupFromEnum(ProgressBarType.Failed_NotStarted), controlsText, statusMarkup,
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // ADT
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // labs
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // vitals
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // BCMA
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // pharma
                                  });

                    continue;
                }

                // if all jobs for a site are in queued and no other collections contain site ID, then mark as not started
                if (!errored.ContainsKey(currentSite) && !active.ContainsKey(currentSite) && !completed.ContainsKey(currentSite) && queued.ContainsKey(currentSite))
                {
                    String controlsText = DataBindingUtils.getProgressBarTextFromEnum(ProgressBarType.NotStarted_NotStarted);
                    String statusMarkup = DataBindingUtils.getStatusCssClassMarkupFromEnum(ProgressBarType.NotStarted_NotStarted);
                    mock.Rows.Add(new object[] { siteIdsAndNames.ElementAt(i).Value, DataBindingUtils.getProgressBarCssClassMarkupFromEnum(ProgressBarType.NotStarted_NotStarted), controlsText, statusMarkup,
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // ADT
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // labs
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // vitals
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // BCMA
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // pharma
                                  });

                    continue;
                }

                // if any config for this site is running or queued - show in progress
                if ((queued.ContainsKey(currentSite) && queued[currentSite] != null && queued[currentSite].Count > 0) ||
                    (active.ContainsKey(currentSite) && active[currentSite] != null && active[currentSite].Count > 0))
                {
                    String controlsText = DataBindingUtils.getProgressBarTextFromEnum(ProgressBarType.InProgress_NotStarted);
                    String statusMarkup = DataBindingUtils.getStatusCssClassMarkupFromEnum(ProgressBarType.InProgress_NotStarted);
                    mock.Rows.Add(new object[] { siteIdsAndNames.ElementAt(i).Value, DataBindingUtils.getProgressBarCssClassMarkupFromEnum(ProgressBarType.InProgress_NotStarted), controlsText, statusMarkup,
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // ADT
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // labs
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // vitals
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // BCMA
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // pharma
                                  });

                    continue;
                }

                // if we show at least one job completed for this site and no configs found in active or queued or errored, consider it complete!
                if (completed.ContainsKey(currentSite) && completed[currentSite] != null && completed[currentSite].Count > 0)
                {
                    String          controlsText = "";
                    String          statusMarkup = "";
                    ProgressBarType currentType  = 0;

                    if (etlStageBySite.ContainsKey(currentSite))
                    {
                        EtlBatchStage etlStage = (EtlBatchStage)Enum.Parse(typeof(EtlBatchStage), etlStageBySite[currentSite].stage);

                        if (etlStage == EtlBatchStage.COMPLETED_WORKFLOW)
                        {
                            controlsText = DataBindingUtils.getProgressBarTextFromEnum(ProgressBarType.Completed_Completed);
                            statusMarkup = DataBindingUtils.getStatusCssClassMarkupFromEnum(ProgressBarType.Completed_Completed);
                            currentType  = ProgressBarType.Completed_Completed;
                        }
                        else if (etlStage == EtlBatchStage.NOT_STARTED)
                        {
                            controlsText = DataBindingUtils.getProgressBarTextFromEnum(ProgressBarType.Completed_InProgress);
                            statusMarkup = DataBindingUtils.getStatusCssClassMarkupFromEnum(ProgressBarType.Completed_InProgress);
                            currentType  = ProgressBarType.Completed_InProgress;
                        }
                        else if (etlStage >= EtlBatchStage.START_WORKFLOW)
                        {
                            controlsText = DataBindingUtils.getProgressBarTextFromEnum(ProgressBarType.Completed_InProgress);
                            statusMarkup = DataBindingUtils.getStatusCssClassMarkupFromEnum(ProgressBarType.Completed_InProgress);
                            currentType  = ProgressBarType.Completed_InProgress;
                        }
                        // TBD - how do we show failed ETL?????
                    }
                    else // didn't find site ID in ETL stages
                    {
                        controlsText = DataBindingUtils.getProgressBarTextFromEnum(ProgressBarType.Completed_InProgress); // TBD - should there be a Completed_notStarted  status??? seems like there should be...
                        statusMarkup = DataBindingUtils.getStatusCssClassMarkupFromEnum(ProgressBarType.Completed_InProgress);
                        currentType  = ProgressBarType.Completed_InProgress;
                    }
                    mock.Rows.Add(new object[] { siteIdsAndNames.ElementAt(i).Value, DataBindingUtils.getProgressBarCssClassMarkupFromEnum(currentType), controlsText, statusMarkup,
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // ADT
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // labs
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // vitals
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // BCMA
                                                 controlsText, DateTime.Now.ToString(dateTimeFormatString), // pharma
                                  });

                    continue;
                }
            }

            return(mock);
        }
 public void btnOk_Click(object sender, EventArgs e)
 {
     DataBindingUtils.UpdateDataBoundObject(this.BindingContext[MyBindingSource]);
     this.DialogResult = DialogResult.Ok;
 }
 public MyEditForm(MyClass objectToDisplay)
 {
     // Suppose that you have defined databindings via the designer
     this.MyBindingSource.DataSource = objectToDisplay;
     DataBindingUtils.SuspendTwoWayBinding(this.BindingContext[MyBindingSource]);
 }