def retrieveLambdaRequestedForThisRow(cls):
        lambda_requested = ""
        bigTable = cls.main_gui.bigTableData

        # try to retrieve from bigTable[i,0]
        data_obj = bigTable[cls.row, 0]
        if data_obj is not None:
            _active_data = data_obj.active_data
            return str(_active_data.lambda_requested)

            # try to retrieve from bigTable[i,2] -> data_lambda_requested
        config_obj = bigTable[cls.row, 2]
        if (config_obj.data_lambda_requested != -1) and (config_obj.data_lambda_requested != ""):
            return str(config_obj.data_lambda_requested)

            # try to retrieve from bigTable[i,1]
        norm_obj = bigTable[cls.row, 1]
        if norm_obj is not None:
            _active_norm = norm_obj.active_data
            return str(_active_norm.lambda_requested)

            # try to retrieve from bigTable[i,2] -> norm_lambda_requested
        if (config_obj.norm_lambda_requested != -1) and (config_obj.data_lambda_requested != ""):
            return str(config_obj.norm_lambda_requested)

            # try from data_run, if not None -> load and retrieve
        data_run = cls.main_gui.ui.reductionTable.item(cls.row, 0).text()
        if data_run != "":
            try:
                _filename = nexus_utilities.findNeXusFullPath(data_run)
                cls.list_filename.append(_filename)
                randomString = utilities.generate_random_workspace_name()
                _nxs = LoadEventNexus(Filename=_filename, OutputWorkspace=randomString, MetaDataOnly=True)
                return str(_nxs.getRun().getProperty("LambdaRequest").value[0])
            except:
                pass

                # try from norm_run, if not None -> load and retrieve
        norm_run = cls.main_gui.ui.reductionTable.item(cls.row, 6).text()
        if norm_run != "":
            try:
                _filename = nexus_utilities.findNeXusFullPath(norm_run)
                cls.list_filename.append(_filename)
                randomString = utilities.generate_random_workspace_name()
                _nxs = LoadEventNexus(Filename=_filename, OutputWorkspace=randomString, MetanormOnly=True)
                return str(_nxs.getRun().getProperty("LambdaRequest").value[0])
            except:
                pass

                # give up and return 'N/A'
        return "N/A"
    def dataLineEditValidate(cls):
        run_sequence = cls.ui.dataLineEdit.text()
        oListRuns = RunSequenceBreaker(run_sequence)
        _list_runs = oListRuns.getFinalList()
        cls.list_runs = _list_runs
        cls.ui.dataLineEdit.setText("")

        cls.list_filename = []
        cls.list_nxs = []
        if _list_runs[0] == -1:
            return
        for _runs in _list_runs:
            try:
                _filename = nexus_utilities.findNeXusFullPath(_runs)
            except:
                pass
            else:
                cls.list_filename.append(_filename)
                randomString = utilities.generate_random_workspace_name()
                _nxs = LoadEventNexus(Filename=_filename, OutputWorkspace=randomString, MetaDataOnly=True)
                cls.list_nxs.append(_nxs)
                cls.str_list_runs.append(str(_runs))

        cls.updateDataTable()
        cls.updateInsertValidRunsButton()
    def normLineEditValidate(cls):
        _run = cls.ui.normLineEdit.text()
        cls.ui.normLineEdit.setText("")
        if _run == "":
            return
        cls.list_runs = [_run]
        try:
            _filename = nexus_utilities.findNeXusFullPath(_run)
        except:
            pass
        else:
            cls.list_filename.append(_filename)
            randomString = utilities.generate_random_workspace_name()
            _nxs = LoadEventNexus(Filename=_filename, OutputWorkspace=randomString, MetaDataOnly=True)
            cls.list_nxs = [_nxs]
            cls.str_list_runs.append(str(_run))

        cls.updateNormTable()
        cls.updateInsertValidRunsButton()