КоллекцияРисунковТабличногоДокумента.Индекс

Методы · IndexOf

Получает индекс рисунка в коллекции.

Синтаксис

Индекс(<Рисунок>)
Полное описание, параметры и ограничения

КоллекцияРисунковТабличногоДокумента.Индекс (SpreadsheetDocumentDrawingCollection.IndexOf)

КоллекцияРисунковТабличногоДокумента (SpreadsheetDocumentDrawingCollection)

Индекс (IndexOf)

Доступен, начиная с версии 8.0.

Синтаксис:
Индекс(<Рисунок>)
Параметры:

<Рисунок> (обязательный)
Тип: РисунокТабличногоДокумента.
Рисунок табличного документа, индекс которого нужно определить.
Возвращаемое значение:
Тип: Число.
Индекс указанного рисунка в коллекции. Если не найдено, то возвращается -1.
Описание:

Получает индекс рисунка в коллекции.

Доступность:

Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер.

Использование в версии:

Доступен, начиная с версии 8.0.

Методическая информация

Практические примеры

Удалить собственные черновые рисунки и оставить полезную подпись

Коллекция рисунков поддерживает получение, индекс и удаление по объекту. Очистить применяем только к отдельному черновому документу, не к рабочему макету.

Где и как запускать

Полный модуль управляемой формы собственной учебной внешней обработки. Построение выполняется на сервере без контекста; показ — на клиенте. Вставляйте на уровне модуля.

Подготовка

  1. Создайте новую внешнюю обработку с управляемой основной формой в учебной базе. Каждый урок — отдельная копия модуля.

  2. На форме создайте команду УчебныйПример и перетащите её на форму как кнопку. В действии команды выберите процедуру УчебныйПример(Команда).

  3. Вставьте весь модуль из примера: УчебныйПример, ПостроитьУчебныйДокумент и УчебнаяТаблица. Серверный вызов возвращает собственный табличный документ клиенту; директивы не удаляйте.

  4. Никакие макеты, документы и справочники конфигурации не нужны. Всё построение — в памяти, без печати, записи файлов и отправки в сервисы.

  5. Показ и ручную проверку выполняйте в тонком клиенте Windows 8.5.1.1343. Каждый урок — отдельная копия формы с пустым модулем до вставки.

&НаКлиенте
Процедура УчебныйПример(Команда)
    ТабДок = ПостроитьУчебныйДокумент();

    ТабДок.Показать("Учебный документ — без печати и сохранения");
КонецПроцедуры

&НаСервереБезКонтекста
Функция ПостроитьУчебныйДокумент()
    ТабДок = Новый ТабличныйДокумент;
    Черновик = Новый ТабличныйДокумент;
    Прямоугольник = Черновик.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Прямоугольник);
    Прямоугольник.Имя = "ЧерноваяРамка";
    Эллипс = Черновик.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Эллипс);
    Эллипс.Имя = "ЧерновойКруг";
    Сообщить(Черновик.Рисунки.Количество() = 2);
    ИндексКруга = Черновик.Рисунки.Индекс(Эллипс);
    Сообщить(Черновик.Рисунки.Получить(ИндексКруга).Имя = "ЧерновойКруг");
    Черновик.Рисунки.Удалить(Прямоугольник);
    Сообщить(Черновик.Рисунки.Количество() = 1);
    Черновик.Рисунки.Очистить();
    Сообщить(Черновик.Рисунки.Количество() = 0);
    Надпись = ТабДок.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Текст);
    Надпись.Имя = "ПолезнаяПодпись";
    Надпись.Лево = 5;
    Надпись.Верх = 5;
    Надпись.Ширина = 80;
    Надпись.Высота = 15;
    Надпись.Текст = "Подпись только для экрана";
    Надпись.ВыводитьНаПечать = Ложь;
    ТабДок.ТолькоПросмотр = Истина;
    Сообщить(ТабДок.Рисунки.Количество() = 1);
    Сообщить(Не Надпись.ВыводитьНаПечать);
    Возврат ТабДок;
КонецФункции

Разбор по шагам

  1. Две черновые фигуры создаются в отдельном новом документе Черновик. Их можно удалять без ущерба для возвращаемого ТабДок.

  2. Индекс ищет позицию объекта; Получить читает по индексу с 0. Удалить принимает сам объект рисунка, не обязательно число.

  3. Очистить удаляет все рисунки черновика. Возвращаемый документ содержит другую полезную надпись.

  4. ВыводитьНаПечать = Ложь оставляет надпись для экрана и исключает из возможной печати. В упражнении принтер не вызывается.

Как проверить результат

  1. Шесть проверок дают Истина.

  2. В показе остаётся только Подпись только для экрана. Черновые фигуры не передаются клиенту.

Ожидаемый результат

Полный цикл собственной коллекции без удаления элементов чужого макета.

На что обратить внимание

  1. Очистить у рисунков не очищает содержимое ячеек, но удалит все рисунки данного документа.

  2. Имена рисунков не заменяют устойчивую проверку наличия объекта; здесь все экземпляры созданы перед использованием.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.