Информатор

Информатор

Класс "Информатор" / "Informer".

Удобный сервисный класс, показывающий различную информацию.

Версия: релиз 2.5 и выше.

Методы

ПолучитьТаблицуМетодов / GetMethodsTable | Получает таблицу методов для переданного объекта.
ПолучитьТаблицуСвойств / GetPropsTable | Получает таблицу свойств для переданного объекта.
МетодСуществует / MethodExists | Проверяет существование указанного метода у переданного объекта.
СвойствоСуществует / PropExists | Проверяет существование указанного свойства у переданного объекта.
ЯвляетсяОбъектом / TheObjectIs | Если первым параметром передан объект, проверяет, является ли переданный объект объектом указанного во втором параметре типа или наследует от него. Если первым параметром передана строка с наименованием типа, проверяет, является ли переданный тип указанным во втором параметре типом или наследует от него.
ЯвляетсяФункцией / IsFunction | Проверяет, является ли указанный метод функцией.
КоманднаяСтрока / CommandLine | Возвращает командную строку запуска 1С-Предприятия.
ПутьПриложения1С / GetAppPath | Возвращает путь к исполняемому файлу 1С-Предприятия.
ТипЗначенияСтрВнутр / GetInternalTypeName | Возвращает внутренний тип объекта. Например, для класса КОП будет возвращено "CComponentClass".
ПолучитьВремяПростояСистемы / GetIdleTimeOfSystem | Возвращает время простоя сеанса работы пользователя в Windows. Используется соответствующие системные функции из WinAPI.
ПолучитьТаблицуЗагруженныхВК / GetAddInDllTable | Получает таблицу свойств с информацией по всем загруженным ВК. Порядок следования файлов в таблице совпадает с порядком загрузки ВК.
ПолучитьТекстТекущегоМодуля / GetCurrentModuleText | Получает текст текущего модуля, в котором вызван данный метод. Работает как для модулей классов 1С++, так и для любых штатных модулей 1С
ПолучитьТекстМодуля / GetModuleText | Получает текст модуля для указанного контекста.


Информатор::ПолучитьТаблицуМетодов / GetMethodsTable

1C++ :: Информатор | Ранее: Информатор | Далее: ПолучитьТаблицуСвойств / GetPropsTable
Информатор :: ПолучитьТаблицуМетодов / GetMethodsTable

Синтаксис: ПолучитьТаблицуМетодов(ПроверяемыйОбъект)

Параметры:
  • ПроверяемыйОбъект - тип: Агрегатный.

Возвращает: тип: ТаблицаЗначений. Полученная таблица методов для данного объекта.

Описание: Получает таблицу методов для переданного объекта.

В случае, если проверяемый объект не является агрегатным типом (Строка, Число и т.п.), выдается исключение.


Информатор::ПолучитьТаблицуСвойств / GetPropsTable

1C++ :: Информатор | Ранее: ПолучитьТаблицуМетодов / GetMethodsTable | Далее: МетодСуществует / MethodExists
Информатор :: ПолучитьТаблицуСвойств / GetPropsTable

Синтаксис: ПолучитьТаблицуСвойств(ПроверяемыйОбъект)

Параметры:
  • ПроверяемыйОбъект - тип: Агрегатный.

Возвращает: тип: ТаблицаЗначений. Полученная таблица свойств для данного объекта.

Описание: Получает таблицу свойств для переданного объекта.

В случае, если проверяемый объект не является агрегатным типом (Строка, Число и т.п.), выдается исключение.


Информатор::МетодСуществует / MethodExists

1C++ :: Информатор | Ранее: ПолучитьТаблицуСвойств / GetPropsTable | Далее: СвойствоСуществует / PropExists
Информатор :: МетодСуществует / MethodExists

Синтаксис: МетодСуществует(ПроверяемыйОбъект, ИмяМетода)

Параметры:
  • ПроверяемыйОбъект - тип: Агрегатный.
  • ИмяМетода - тип: Строка. Имя метода, существование которого проверяем.

Возвращает: тип: Число. 1, если метод существует. 0, если нет.

Описание: Проверяет существование указанного метода у переданного объекта.

В случае, если проверяемый объект не является агрегатным типом (Строка, Число и т.п.), выдается исключение. В случае, если второй параметр не является строкой, выдается исключение.


Информатор::СвойствоСуществует / PropExists

1C++ :: Информатор | Ранее: МетодСуществует / MethodExists | Далее: ЯвляетсяОбъектом / TheObjectIs
Информатор :: СвойствоСуществует / PropExists

Синтаксис: СвойствоСуществует(ПроверяемыйОбъект, ИмяСвойства)

Параметры:
  • ПроверяемыйОбъект - тип: Агрегатный.
  • ИмяСвойства - тип: Строка. Имя свойства, существование которого проверяем.

Возвращает: тип: Число. 1, если свойство существует. 0, если нет.

Описание: Проверяет существование указанного свойства у переданного объекта.

В случае, если проверяемый объект не является агрегатным типом (Строка, Число и т.п.), выдается исключение. В случае, если второй параметр не является строкой, выдается исключение.


Информатор::ЯвляетсяОбъектом / TheObjectIs

1C++ :: Информатор | Ранее: СвойствоСуществует / PropExists | Далее: ЯвляетсяФункцией / IsFunction
Информатор :: ЯвляетсяОбъектом / TheObjectIs

Синтаксис: ЯвляетсяОбъектом(ПроверяемыйОбъектИлиНаименованиеТипа, НаименованиеТипаНаКоторыйПроверяем)

Параметры:
  • ПроверяемыйОбъектИлиНаименованиеТипа - тип: Агрегатный или Строка.
  • НаименованиеТипаНаКоторыйПроверяем - тип: Строка.

Возвращает: тип: Число. 1, если указанный объект или тип является данным типом или унаследован от него. 0, если нет.

Описание: Если первым параметром передан объект, проверяет, является ли переданный объект объектом указанного во втором параметре типа или наследует от него. Если первым параметром передана строка с наименованием типа, проверяет, является ли переданный тип указанным во втором параметре типом или наследует от него.

В случае, если проверяемый объект не является агрегатным типом или строкой, выдается исключение. В случае, если второй параметр не является строкой, выдается исключение.


Информатор::ЯвляетсяФункцией / IsFunction

1C++ :: Информатор | Ранее: ЯвляетсяОбъектом / TheObjectIs | Далее: КоманднаяСтрока / CommandLine
Информатор :: ЯвляетсяФункцией / IsFunction

Синтаксис: СвойствоСуществует(ПроверяемыйОбъект, ИмяМетода)

Параметры:
  • ПроверяемыйОбъект - тип: Агрегатный.
  • ИмяМетода - тип: Строка. Имя метода, который проверяем.

Возвращает: тип: Число. 1, если метод существует и является функцией. 0, если не существует или является процедурой.

Описание: Проверяет, является ли указанный метод функцией.

В случае, если проверяемый объект не является агрегатным типом (Строка, Число и т.п.), выдается исключение. В случае, если второй параметр не является строкой, выдается исключение.


Информатор::КоманднаяСтрока / CommandLine

1C++ :: Информатор | Ранее: ЯвляетсяФункцией / IsFunction | Далее: ПутьПриложения1С / GetAppPath
Информатор :: КоманднаяСтрока / CommandLine

Синтаксис: КоманднаяСтрока()

Параметры:

Возвращает: тип: Строка. Командная строка запуска 1С-Предприятия.

Описание: Возвращает командную строку запуска 1С-Предприятия.


Информатор::ПутьПриложения1С / GetAppPath

1C++ :: Информатор | Ранее: КоманднаяСтрока / CommandLine | Далее: ТипЗначенияСтрВнутр / GetInternalTypeName
Информатор :: ПутьПриложения1С / GetAppPath

Синтаксис: ПутьПриложения1С()

Параметры:

Возвращает: тип: Строка. Путь к исполняемому файлу 1С-Предприятия.

Описание: Возвращает путь к исполняемому файлу 1С-Предприятия.


Информатор::ТипЗначенияСтрВнутр / GetInternalTypeName

1C++ :: Информатор | Ранее: ПутьПриложения1С / GetAppPath | Далее: ПолучитьВремяПростояСистемы / GetIdleTimeOfSystem
Информатор :: ТипЗначенияСтрВнутр / GetInternalTypeName

Синтаксис: ТипЗначенияСтрВнутр(ПроверяемыйОбъект)

Параметры:
  • ПроверяемыйОбъект - тип: Агрегатный.

Возвращает: тип: Строка. Внутренний тип объекта.

Описание: Возвращает внутренний тип объекта. Например, для класса КОП будет возвращено "CComponentClass".

В случае, если проверяемый объект не является агрегатным типом (Строка, Число и т.п.), выдается исключение.


Информатор::ПолучитьВремяПростояСистемы / GetIdleTimeOfSystem

1C++ :: Информатор | Ранее: ТипЗначенияСтрВнутр / GetInternalTypeName | Далее: ПолучитьТаблицуЗагруженныхВК / GetAddInDllTable
Информатор :: ПолучитьВремяПростояСистемы / GetIdleTimeOfSystem

Синтаксис: ПолучитьВремяПростояСистемы()

Возвращает: тип: Время простоя в миллисекундах.

Важно: Метод работает только на Windows ME/2000/XP и выше.

Описание: Возвращает время простоя сеанса работы пользователя в Windows. Используется соответствующие системные функции из WinAPI.

Удобно использовать внутри таймеров/обработки ожидания для проверки бездействия пользователя. Например, в целях завершения работы, если это задано административной политикой.

Пример: Создайте внешнюю обработку со следующим модулем и нажмите Сформировать Потом какое-то время ничего не нажимайте клавиатуру и не трогайте мышь и вы увидете, как увеличивается время простоя. А если тронуть мышь или нажать клавишу, время простоя сбросится к нулю!

Перем РасширениеФормы;
Перем Информатор;
Процедура Таймер() Экспорт
    ПрошлоВремени = Информатор.ПолучитьВремяПростояСистемы();
    Сообщить("ПрошлоВремени = <"+ПрошлоВремени+">");
КонецПроцедуры
//*******************************************
Процедура Сформировать()
    РасширениеФормы = СоздатьОбъект("РасширениеФормы");
    РасширениеФормы.ОбработкаОжидания("Таймер", 50);
    Информатор = СоздатьОбъект("Информатор");
КонецПроцедуры


Информатор::ПолучитьТаблицуЗагруженныхВК / GetAddInDllTable

1C++ :: Информатор | Ранее: ПолучитьВремяПростояСистемы / GetIdleTimeOfSystem | Далее: ПолучитьТекстТекущегоМодуля / GetCurrentModuleText
Информатор :: ПолучитьТаблицуЗагруженныхВК / GetAddInDllTable

Синтаксис: ПолучитьТаблицуЗагруженныхВК()

Возвращает: тип: ТаблицаЗначений. Полученная таблица с информацией по всем загруженным ВК.

Описание: Получает таблицу свойств с информацией по всем загруженным ВК. Порядок следования файлов в таблице совпадает с порядком загрузки ВК.


Информатор::ПолучитьТекстТекущегоМодуля / GetCurrentModuleText

1C++ :: Информатор | Ранее: ПолучитьТаблицуЗагруженныхВК / GetAddInDllTable | Далее: ПолучитьТекстМодуля / GetModuleText
Информатор :: ПолучитьТекстТекущегоМодуля / GetCurrentModuleText

Синтаксис: ПолучитьТекстТекущегоМодуля()

Возвращает: тип: Строка. Полученная строка с текстом текущего модуля.

Описание: Получает текст текущего модуля, в котором вызван данный метод. Работает как для модулей классов 1С++, так и для любых штатных модулей 1С

Важно: метод работает только для одного уровня вложенности! Если в обработке вызвать метод, будет показан ее текст. Если в обработке вызвать метод класса, который вызывает этот метод, будет показан текст класса !!


Информатор::ПолучитьТекстМодуля / GetModuleText

1C++ :: Информатор | Ранее: ПолучитьТекстТекущегоМодуля / GetCurrentModuleText | Далее:
Информатор :: ПолучитьТекстМодуля / GetModuleText

Синтаксис: ПолучитьТекстМодуля(КонтФормыИлиКласса)

Параметры:
  • КонтФормыИлиКласса - тип: Агрегатный. Контекст формы или контекст пользовательского класса.

Возвращает: тип: Строка. Полученная строка с текстом модуля формы или класса.

Описание: Получает текст модуля для указанного контекста.