Newer
Older
Перем мИсполнителиКоманд;
Процедура ЗарегистрироватьКоманды(Знач Парсер) Экспорт
мИсполнителиКоманд = Новый Соответствие;
ДобавитьКоманду("help" , "КомандаСправкаПоПараметрам", Парсер);
ДобавитьКоманду("loadcfg" , "КомандаЗагрузитьКонфигурацию", Парсер);
ДобавитьКоманду("loadrepo", "КомандаОбновитьИзХранилища", Парсер);
ДобавитьКоманду("session" , "КомандаУправлениеСеансами", Парсер);
ДобавитьКоманду("dbupdate", "КомандаОбновитьКонфигурациюБД", Парсер);
ДобавитьКоманду("run", "КомандаЗапуститьВРежимеПредприятия", Парсер);
ДобавитьКоманду("disablesupport", "КомандаСнятьСПоддержки", Парсер);
ДобавитьКоманду("schedule", "КомандаУправлениеРегламентнымиЗаданиями",Парсер);
КонецПроцедуры
Функция ПолучитьКоманду(Знач ИмяКоманды) Экспорт
КлассРеализации = мИсполнителиКоманд[ИмяКоманды];
Если КлассРеализации = Неопределено Тогда
ВызватьИсключение "Неверная операция. Команда '"+ИмяКоманды+"' не предусмотрена";
КонецЕсли;
Функция ВыполнитьКоманду(Знач ИмяКоманды, Знач ПараметрыКоманды) Экспорт
Команда = ПолучитьКоманду(ИмяКоманды);
Возврат Команда.ВыполнитьКоманду(ПараметрыКоманды);
КонецФункции
Функция РезультатыКоманд() Экспорт
РезультатыКоманд = Новый Структура;
РезультатыКоманд.Вставить("НеРеализовано", 255);
РезультатыКоманд.Вставить("Успех", 0);
РезультатыКоманд.Вставить("НеверныеПараметры", 5);
РезультатыКоманд.Вставить("ОшибкаВремениВыполнения", 1);
Возврат РезультатыКоманд;
КонецФункции
Функция КодВозвратаКоманды(Знач Команда) Экспорт
Возврат Число(Команда);
КонецФункции
Процедура ДобавитьКоманду(Знач ИмяКоманды, Знач КлассРеализации, Знач Парсер)
РеализацияКоманды = Новый(КлассРеализации);
РеализацияКоманды.ЗарегистрироватьКоманду(ИмяКоманды, Парсер);
мИсполнителиКоманд.Вставить(ИмяКоманды, РеализацияКоманды);
КонецПроцедуры
Процедура ПоказатьСправкуПоКомандам() Экспорт
ВыполнитьКоманду("help", Новый Соответствие);