Информатор

Содержание

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

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

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

Методы

ПолучитьТаблицуМетодов / GetMethodsTable

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

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

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

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

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

ПолучитьТаблицуСвойств / GetPropsTable

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

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

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

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

МетодСуществует / MethodExists

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

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

System Message: WARNING/2 (Informer.new, line 67)

Definition list ends without a blank line; unexpected unindent.
  • ИмяМетода - тип: Строка. Имя метода, существование которого проверяем.

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

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

System Message: WARNING/2 (Informer.new, line 75)

Definition list ends without a blank line; unexpected unindent.

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

СвойствоСуществует / PropExists

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

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

System Message: WARNING/2 (Informer.new, line 83)

Definition list ends without a blank line; unexpected unindent.
  • ИмяСвойства - тип: Строка. Имя свойства, существование которого проверяем.

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

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

System Message: WARNING/2 (Informer.new, line 91)

Definition list ends without a blank line; unexpected unindent.

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

ЯвляетсяОбъектом / TheObjectIs

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

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

System Message: WARNING/2 (Informer.new, line 99)

Definition list ends without a blank line; unexpected unindent.
  • НаименованиеТипаНаКоторыйПроверяем - тип: Строка.

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

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

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

ЯвляетсяФункцией / IsFunction

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

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

System Message: WARNING/2 (Informer.new, line 118)

Definition list ends without a blank line; unexpected unindent.
  • ИмяМетода - тип: Строка. Имя метода, который проверяем.

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

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

System Message: WARNING/2 (Informer.new, line 127)

Definition list ends without a blank line; unexpected unindent.

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

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

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

Параметры:

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

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

ПутьПриложения1С / GetAppPath

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

Параметры:

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

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

ТипЗначенияСтрВнутр / GetInternalTypeName

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

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

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

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

System Message: WARNING/2 (Informer.new, line 159)

Block quote ends without a blank line; unexpected unindent.

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

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

ПолучитьВремяПростояСистемы / GetIdleTimeOfSystem

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

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

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

Описание: Возвращает время простоя сеанса работы пользователя в Windows.

System Message: WARNING/2 (Informer.new, line 173)

Block quote ends without a blank line; unexpected unindent.

Используется соответствующие системные функции из WinAPI.

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

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

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

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

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

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

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

ПолучитьТекстТекущегоМодуля / GetCurrentModuleText

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

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

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

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

ПолучитьТекстМодуля / GetModuleText

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

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

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

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