Исследовать фактические дочерние объекты своего поля

Учебные задачи

Поиск работает на полученном поле формы. Если это лист дерева, отсутствие детей является нормальным результатом.

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

Тонкий или толстый клиент в режиме менеджера тестирования, собственный тестируемый тонкий клиент.

Подготовка

  1. Только свои учебные сеансы: вручную запустите тонкий клиент с /TESTCLIENT -TPort15419, другой клиент — с /TESTMANAGER. Соединение использует 127.0.0.1:15419. В тестируемом клиенте заранее откройте собственную управляемую форму с заголовком Учебный стенд. Код вставьте в клиентский модуль формы менеджера тестирования, первую процедуру вызовите своей кнопкой. Здесь сеансы не запускаются.

  2. Подготовьте собственное поле текстового документа УчебныйТекст. Его реальная тестируемая иерархия зависит от вида поля; не добавляйте вымышленные дочерние реквизиты.

&НаКлиенте
Процедура ВыполнитьУчебныйТест()
    Тест = Новый ТестируемоеПриложение("127.0.0.1", 15419);
    Тест.УстановитьСоединение();
    Форма = Тест.ПолучитьОбъект(Тип("ТестируемаяФорма"), "Учебный стенд", , 2);
    Поле = Форма.ПолучитьОбъект(Тип("ТестируемоеПолеФормы"), , "УчебныйТекст", 2);
    Все = Поле.НайтиОбъекты(, , , 1);
    Один = Поле.НайтиОбъект(, , , 1);
    Сообщить("Найдено объектов: " + Строка(Все.Количество()));
    Если Один <> Неопределено Тогда
        Вид = ТипЗнч(Один);
        Строгий = Поле.ПолучитьОбъект(Вид, , , 1);
        Сообщить("Тип подчиненного объекта: " + Строка(Вид));
    Иначе
        Сообщить("У поля нет найденного подчиненного объекта");
    КонецЕсли;
    Тест.РазорватьСоединение();
КонецПроцедуры

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

  1. Получите свое поле.

  2. Сравните единичный и множественный поиск.

  3. Строгий поиск выполняйте только после фактического нахождения.

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

  1. У каждого поиска конечный тайм-аут.

  2. Неопределено не подменяется другим объектом.

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

Показан действительный результат поиска в собственной иерархии поля.

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

  1. Поиск внутри поля не равен поиску соседних полей всей формы. Для соседнего поля используйте Форма.ПолучитьОбъект.

  2. Разрыв соединения показан только на нормальном пути, не как гарантированная аварийная очистка.

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

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

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

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

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