Skip to content

Commit 913b0e0

Browse files
committed
Документация по классу КонсольноеПриложения
1 parent 715be00 commit 913b0e0

1 file changed

Lines changed: 101 additions & 29 deletions

File tree

Lines changed: 101 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,52 +1,52 @@
1-
Перем Команда;
1+
// Класс ПараметрКоманды, для доступа к установленному значению из вне
2+
Перем ФлагВерсия Экспорт;
3+
// Строковое представление версии приложения
24
Перем ВерсияПриложения Экспорт;
5+
6+
Перем Команда;
37
Перем НаименованиеПриложения;
48
Перем ОписаниеПриложения;
59

6-
Перем ДействиеВыполнения Экспорт;
7-
Перем ДействиеПередВыполнением Экспорт;
8-
Перем ДействиеПослеВыполнения Экспорт;
9-
10-
Перем ФлагВерсия Экспорт;
11-
12-
Перем ТипОпцииКоманды;
13-
14-
Процедура ПриСозданииОбъекта(Знач Наименование, Знач Описание, Знач КлассРеализацииОсновныйКоманды = Неопределено)
15-
16-
НаименованиеПриложения = Наименование;
17-
ОписаниеПриложения = Описание;
18-
19-
Если КлассРеализацииОсновныйКоманды = Неопределено Тогда
20-
КлассРеализацииОсновныйКоманды = ЭтотОбъект;
21-
КонецЕсли;
22-
23-
Команда = Новый КомандаПриложения(Наименование, Описание, КлассРеализацииОсновныйКоманды, ЭтотОбъект);
24-
25-
ТипОпцииКоманды = Новый Структура;
26-
ТипОпцииКоманды.Вставить("Опция", "Опция");
27-
ТипОпцииКоманды.Вставить("Аргумент", "Аргумент");
28-
29-
КонецПроцедуры
3010

11+
// Процедура добавляет версию приложения,
12+
// при вызове данной опции, показывается установленная версия и
13+
// завершается выполнение с кодом (0)
14+
//
15+
// Параметры:
16+
// Наименование - строка - имя опции, в строке допустимо задавать синоним через пробел, например "v version"
17+
// СтрокаВерсии - строка - версия, приложения
3118
Процедура Версия(Наименование, СтрокаВерсии) Экспорт
3219

3320
ВерсияПриложения = СтрокаВерсии;
3421
ФлагВерсия = Команда.Опция(Наименование, Ложь, "показать версию и выйти");
3522

3623
КонецПроцедуры
3724

25+
// Процедура позволяет переопределить стандартную строку использования приложения
26+
//
27+
// Параметры:
28+
// СтрокаСпек - строка - переопределенная строка использования приложения
3829
Процедура УстановитьСпек(Знач СтрокаСпек) Экспорт
3930

4031
Команда.Спек = СтрокаСпек;
4132

4233
КонецПроцедуры
4334

35+
// Возвращает основную команду приложения
36+
//
37+
// Возвращаемое значение:
38+
// Команда - класс КомандаПриложения
4439
Функция ПолучитьКоманду() Экспорт
4540

4641
Возврат Команда;
4742

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

45+
// Основная процедура запуска приложения
46+
//
47+
// Параметры:
48+
// АргументыКоманднойСтрокиВходящие - Массив - Элементы <Строка>, необзательный,
49+
// Если, не передано считывает из АргументыКоманднойСтроки
5050
Процедура Запустить(АргументыКоманднойСтрокиВходящие = Неопределено) Экспорт
5151

5252
Аргументы = АргументыКоманднойСтроки;
@@ -60,36 +60,101 @@
6060

6161
КонецПроцедуры
6262

63+
// Функция добавляет команду приложение и возвращает экземпляр данной команды
64+
//
65+
// Параметры:
66+
// ИмяКоманды - строка - в строке допустимо задавать синоним через пробел, например "exec e"
67+
// ОписаниеКоманды - строка - описание команды для справки
68+
// КлассРеализацииКоманды - объект - класс, объект реализующий функции выполнения команды.
69+
// Так же используется, для автоматической настройки опций и параметров команды
70+
//
71+
// Возвращаемое значение:
72+
// Команда - класс КомандаПриложения
6373
Функция ДобавитьКоманду(ИмяКоманды, ОписаниеКоманды, КлассРеализацииКоманды) Экспорт
6474

6575
Возврат Команда.ДобавитьПодкоманду(ИмяКоманды, ОписаниеКоманды, КлассРеализацииКоманды);
6676

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

79+
// Процедура устанавливает процедуру "ВыполнитьКоманду" выполнения для приложения
80+
//
81+
// Параметры:
82+
// КлассРеализации - объект - класс, объект реализующий процедуру выполнения команды.
83+
// ИмяПроцедуры - строка - имя процедуры, отличное от стандартного "ВыполнитьКоманду"
84+
//
6985
Процедура УстановитьОсновноеДействие(КлассРеализации, ИмяПроцедуры = "ВыполнитьКоманду") Экспорт
7086

7187
Команда.УстановитьДействиеВыполнения(КлассРеализации, ИмяПроцедуры);
7288

7389
КонецПроцедуры
7490

91+
// Процедура устанавливает процедуру "ПередВыполнениемКоманды" выполнения для приложения
92+
// запускаемую перед выполнением "ВыполнитьКоманду"
93+
//
94+
// Параметры:
95+
// КлассРеализации - объект - класс, объект реализующий процедуру выполнения команды.
96+
// ИмяПроцедуры - строка - имя процедуры, отличное от стандартного "ПередВыполнениемКоманды"
97+
//
7598
Процедура УстановитьДействиеПередВыполнением(КлассРеализации, ИмяПроцедуры = "ПередВыполнениемКоманды") Экспорт
7699

77100
Команда.УстановитьДействиеПередВыполнением(КлассРеализации, ИмяПроцедуры);
78101

79102
КонецПроцедуры
80103

104+
// Процедура устанавливает процедуру "ПослеВыполненияКоманды" выполнения для приложения
105+
// запускаемую после выполнением "ВыполнитьКоманду"
106+
//
107+
// Параметры:
108+
// КлассРеализации - объект - класс, объект реализующий процедуру выполнения команды.
109+
// ИмяПроцедуры - строка - имя процедуры, отличное от стандартного "ПослеВыполненияКоманды"
110+
//
81111
Процедура УстановитьДействиеПослеВыполнения(КлассРеализации, ИмяПроцедуры = "ПослеВыполненияКоманды") Экспорт
82112

83113
Команда.УстановитьДействиеПослеВыполнения(КлассРеализации, ИмяПроцедуры);
84114

85115
КонецПроцедуры
86116

117+
// Функция добавляет опцию приложения и возвращает экземпляр данной опции
118+
//
119+
// Параметры:
120+
// Имя - строка - имя опции, в строке допустимо задавать синоним через пробел, например "s some-opt"
121+
// Значение - строка - значение опции по умолчанию
122+
// Описание - объект - описание опции для справки.
123+
//
124+
// Возвращаемое значение:
125+
// Команда - класс ПараметрКоманды
126+
//
127+
// Дополнительно смотри справку по классу ПараметрКоманды
87128
Функция Опция(Имя, Значение = "", Описание = "") Экспорт
88129

89130
Возврат Команда.Опция(Имя, Значение, Описание);
90131

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

134+
// Функция добавляет аргумент приложения и возвращает экземпляр данной аргумента
135+
//
136+
// Параметры:
137+
// Имя - строка - имя аргумента, в строке допустимо использование только БОЛЬШИХ латинских букв, например "ARG"
138+
// Значение - строка - значение аргумента по умолчанию
139+
// Описание - объект - описание аргумента для справки.
140+
//
141+
// Возвращаемое значение:
142+
// Команда - класс ПараметрКоманды
143+
//
144+
// Дополнительно смотри справку по классу ПараметрКоманды
145+
Функция Аргумент(Имя, Значение = "", Описание = "") Экспорт
146+
147+
Возврат Команда.Аргумент(Имя, Значение, Описание);
148+
149+
КонецФункции
150+
151+
// Предопределенная процедура выполнения приложения, если не задана процедура в классе.
152+
// Выводит справку, по работе с приложением и завершает работу с кодом "1"
153+
// Переопределяется, процедурой "УстановитьОсновноеДействие"
154+
//
155+
// Параметры:
156+
// Команда - класс КомандаПриложения - инстанс класс, для доступа к опция и аргументам выполняемой команды
157+
//
93158
Процедура ВыполнитьКоманду(Знач Команда) Экспорт
94159

95160
Сообщить("Не корректное использование"+ Символы.ПС);
@@ -98,8 +163,15 @@
98163

99164
КонецПроцедуры
100165

101-
Функция Аргумент(Имя, Значение = "", Описание = "") Экспорт
102-
103-
Возврат Команда.Аргумент(Имя, Значение, Описание);
166+
Процедура ПриСозданииОбъекта(Знач Наименование, Знач Описание, Знач КлассРеализацииОсновныйКоманды = Неопределено)
104167

105-
КонецФункции
168+
НаименованиеПриложения = Наименование;
169+
ОписаниеПриложения = Описание;
170+
171+
Если КлассРеализацииОсновныйКоманды = Неопределено Тогда
172+
КлассРеализацииОсновныйКоманды = ЭтотОбъект;
173+
КонецЕсли;
174+
175+
Команда = Новый КомандаПриложения(Наименование, Описание, КлассРеализацииОсновныйКоманды, ЭтотОбъект);
176+
177+
КонецПроцедуры

0 commit comments

Comments
 (0)