Spec-Zone.ru › MySQL Shell 9.2

11.1.2 Регистрация отчетов MySQL Shell

Для регистрации вашего пользовательского отчета в MySQL Shell, вызовите метод shell.registerReport() в JavaScript или shell.register_report() в Python. Синтаксис метода следующий:

shell.registerReport(name, type, report[, description])

Где:

  • name — строка, содержащая уникальное имя отчета.

  • type — строка, задающая тип отчета, определяющий формат вывода, либо “список”, либо “отчет”, либо “печать”.

  • report — функция, вызываемая при выполнении отчета.

  • description — словарь с опциями, которые вы можете использовать для задания опций, поддерживаемых отчетом, дополнительных аргументов, которые принимает отчет, и справочной информации, предоставляемой в справочной системе MySQL Shell.

Параметры name, type и report являются обязательными. Имя отчета должно соответствовать следующим требованиям:

  • Оно должно быть уникальным в вашей установке MySQL Shell.

  • Оно должно быть допустимым идентификатором сценария, поэтому первый символ должен быть буквой или символом подчеркивания, за которым следует любое количество букв, цифр или символов подчеркивания.

  • Оно может быть в смешанном регистре, но оно все равно должно быть уникальным в вашей установке MySQL Shell при преобразовании в нижний регистр.

Имя отчета нечувствительно к регистру во время процесса регистрации и при запуске отчета с помощью команд \show и \watch. Имя отчета чувствительно к регистру при вызове соответствующей функции API в объекте shell.reports. Там вы должны вызвать функцию с точным именем, которое использовалось для регистрации отчета, независимо от того, находитесь ли вы в режиме Python или JavaScript.

Необязательный словарь содержит следующие ключи, все из которых являются необязательными:

brief

Краткое описание отчета.

details

Подробное описание отчета, предоставленное как массив строк. Это предоставляется при использовании команды \help или опции --help с командой \show.

options

Любые опции, специфичные для отчета, которые может принять отчет. Каждый словарь в массиве описывает одну опцию и должен содержать следующие ключи:

  • name (строка, обязательно): Имя опции в полном формате, которое должно быть допустимым идентификатором сценария.

  • brief (строка, необязательно): Краткое описание опции.

  • shortcut (строка, необязательно): Альтернативное имя опции в виде одиночного буквенно-цифрового символа.

  • details (массив строк, необязательно): Подробное описание опции. Это предоставляется при использовании команды \help или опции --help с командой \show.

  • type (строка, необязательно): Тип значения опции. Допустимые значения — “строка”, “логическое”, “целое число” и “вещественное число”, по умолчанию “строка”, если type не указан. Если указано “логическое”, опция действует как переключатель: по умолчанию false, если не указано, по умолчанию true (и не принимает значения) при запуске отчета с помощью команд \show или \watch и должно иметь допустимое значение при запуске отчета с использованием объекта shell.reports.

  • required (логическое значение, необязательно): Требуется ли опция. Если required не указан, по умолчанию false. Если тип опции “логическое”, то required не может быть истинным.

  • values (массив строк, необязательно): Список разрешенных значений для опции. Только опции с типом “строка” могут иметь этот ключ. Если values не указан, опция принимает любые значения.

argc

Строка, определяющая количество дополнительных аргументов, которые ожидает отчет, может быть одной из следующих:

  • Точное число аргументов, указанное как одно число.

  • Ноль или более аргументов, указанных как звездочка.

  • Диапазон номеров аргументов, указанный как два числа, разделенных дефисом (например, “1-5”).

  • Диапазон номеров аргументов с минимальным, но без максимального значения, указанный как число и звездочка, разделенные дефисом (например, “1-*”).

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-shell-9.2-en/mysql-shell-reporting-create-registering.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API