Skip to content
МенеджерКомандПриложения.os 2 KiB
Newer Older

Перем мИсполнителиКоманд;

Процедура ЗарегистрироватьКоманды(Знач Парсер) Экспорт
	
	мИсполнителиКоманд = Новый Соответствие;
	
	ДобавитьКомандуСправка(Парсер);
	
КонецПроцедуры

Функция ПолучитьКоманду(Знач ИмяКоманды) Экспорт
	
	КлассРеализации = мИсполнителиКоманд[ИмяКоманды];
	Если КлассРеализации = Неопределено Тогда
		ВызватьИсключение "Неверная операция. Команда '"+ИмяКоманды+"' не предусмотрена";
	КонецЕсли;
	
	Возврат Новый(КлассРеализации);
	
КонецФункции

Функция РезультатыКоманд() Экспорт

	РезультатыКоманд = Новый Структура;
	РезультатыКоманд.Вставить("НеРеализовано", 255);
	РезультатыКоманд.Вставить("Успех", 0);
	РезультатыКоманд.Вставить("НеверныеПараметры", 5);
	РезультатыКоманд.Вставить("ОшибкаВремениВыполнения", 1);
	
	Возврат РезультатыКоманд;

КонецФункции

Функция КодВозвратаКоманды(Знач Команда) Экспорт
	Возврат Число(Команда);
КонецФункции

Процедура ДобавитьКомандуСправка(Знач Парсер)
	
	ОписаниеКоманды = Парсер.ОписаниеКоманды("help", "Вывод справки по параметрам");
	Парсер.ДобавитьКоманду(ОписаниеКоманды);
	
	мИсполнителиКоманд.Вставить("help", "КомандаСправкаПоПараметрам");
	
КонецПроцедуры