Загрузка данных


&НаКлиенте
Процедура СписокСтудентовИтоговаяОценкаПриИзменении(Элемент)
	
	ТекущаяСтрока = Элементы.СписокСтудентов.ТекущиеДанные;
	
	Если ТекущаяСтрока <> Неопределено Тогда
		
		// Переводим ввод в нижний регистр и убираем лишние пробелы
		ЗначениеОценки = НРег(СокрЛП(ТекущаяСтрока.ИтоговаяОценка));
		
		// Если это не зачет и не незачет, проверяем цифру от 1 до 5
		Если ЗначениеОценки <> "зачет" И ЗначениеОценки <> "незачет" Тогда
			
			// Переменная пишется слитно, без пробелов!
			ЧисловаяОценка = 0; 
			Попытка
				ЧисловаяОценка = Число(ЗначениеОценки);
			Исключение
				ЧисловаяОценка = 0;
			КонецПопытки;
			
			// Проверяем вхождение в рамки оценок
			Если ЧисловаяОценка < 1 Или ЧисловаяОценка > 5 Тогда
				ТекущаяСтрока.ИтоговаяОценка = "";
				ПоказатьПредупреждение(, "Допустимые значения: цифры от 1 до 5, либо слова 'Зачет', 'Незачет'!");
			КонецЕсли;
			
		КонецЕсли;
		
	КонецЕсли;
	
КонецПроцедуры

&НаКлиенте
Процедура СписокСтудентовПосещаемостьПриИзменении(Элемент)
	
	ТекущаяСтрока = Элементы.СписокСтудентов.ТекущиеДанные;
	
	Если ТекущаяСтрока <> Неопределено Тогда
		// Если студент отсутствовал — сбрасываем оценку
		Если ТекущаяСтрока.Посещаемость = ПредопределенноеЗначение("Перечисление.ВидыПосещаемости.Отсутствовал") Тогда
			Если ЗначениеЗаполнено(ТекущаяСтрока.ИтоговаяОценка) Тогда
				ТекущаяСтрока.ИтоговаяОценка = "";
				ПоказатьОповещениеПользователя("Внимание", , "Оценка сброшена, так как студент отсутствовал на экзамене!");
			КонецЕсли;
		КонецЕсли;
	КонецЕсли;
	
КонецПроцедуры